这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 用C51单片机实现微秒级(ms)精确延时方案

共3条 1/1 1 跳转至

用C51单片机实现微秒级(ms)精确延时方案

高工
2008-10-31 20:50:36     打赏

51单片机C51微秒级(ms)精确延时

 

如下程序能实现ms微秒级的比较精确的延时

 

 

void Delayms(unsigned int n)

{

    unsigned int i,j;

    for(j=n;j>0;j--)

    for(i=112;i>0;i--);

}

 

 

用keil可以看出这个延时的时间,我们先延时1ms(Delayms(1))。

进入Delayms前,sec=0.00042209s

 

 

 

 

 

延时后,sec=0.00142253s

 

 

 

 

 

 

可以知道Delayms(1)实际延时0.00142253s—0.00042209s=0.00100044s≈1ms

 

同样如果想延时15ms的话,用Delayms(15),实际延时0.01480903s≈15ms,延时还是挺精确的。




关键词: 单片机     实现     微秒     精确     延时     方案    

菜鸟
2008-11-12 20:15:34     打赏
2楼
这种方法跟编译器的各种设置方法有关,不同的编译器得到的结果也完全不同,不可靠

菜鸟
2008-11-16 13:32:26     打赏
3楼
说的对,不过倒是很有创意,拓展了思维。

共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]