硬汉嵌入式论坛

 找回密码
 立即注册
查看: 5195|回复: 1
收起左侧

[有问必答] 为什么while中的延时不准

[复制链接]

12

主题

24

回帖

12

积分

新手上路

积分
12
QQ
发表于 2016-4-25 14:52:15 | 显示全部楼层 |阅读模式
while(1)
    {
        PFout(13)=1;        
        delay_ms(1);
        PFout(13)=0;
        ip();
    }

void ip(void)
{
    PFout(15)=1;
    delay_us(1);
    PFout(15)=0;
}  
就这么简单的两小段程序,pf15的脉冲非常准,高电平就是1us,照理说,pf13的低电平也应该是1us,但是实际上却有1.3,而且随着IP函数内的延时的增大,这个误差越来越大,后来将近有一倍的时间误差,这是怎么回事?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117546
QQ
发表于 2016-4-27 01:18:03 | 显示全部楼层
你的  delay_ms(1);的实现有问题。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-8-14 01:09 , Processed in 0.036149 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表