51单片机C51毫秒级(ms)精确延时
时间:2018-07-30 10:20:01
手机看文章
扫描二维码
随时随地手机看文章
[导读]如下程序能实现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前
如下程序能实现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,延时还是挺精确的。





