EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
51单片机C51精确延时
8 S& X2 q5 g Q6 i
+ r0 ^4 o& {; `9 x# ~如下程序能实现ms级的比较精确的延时:
; I0 y9 d. N& B0 u9 n M4 E, hvoid Delayms(unsigned int n)3 X2 F5 v; i' L+ X8 O4 S9 M* x
{ 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,延时还是挺精确的。
8 `$ P' Z- J! K9 ?. w% d. u/ c |