51單片機C51精確延時
如下程序能實現(xiàn)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,延時還是挺精確的。
編輯:admin 最后修改時間:2018-05-18