51单片机怎么延时延时问题

  很多初学者对于程序中ms级延時函数的编写方法比较疑惑其原理和方式虽然简单,但是却没有相关资料这里用一个例程详细介绍一下。

  在编译器下建立一个新項目也可以利用已有项目。此过程中需要注意的选择,因为for循环里指令的执行时间和晶振有直接关系本例中晶振使用11.0592M。

  j变量是調整程序运行的时间参数调整j的数值,使1次循环的时间在1ms

  将此程序编译通过,然后利用软件仿真调整时间。

两次时间差就是延時函数使用的时间如果与1ms相差比较多,用户可以调整j参数的值使延时时间尽量接近1ms。如增大j的值for(j=0;j<105;j++);

  此方法得出延时函数在晶振不哃的情况下,延时时间会不准另外这种方法不是完全精确的延时,所以不要太深研究误差的问题软件调试结果,这个程序的延时时间為:1.01779ms一般的单片机系统中都可以应用。



本网站试开通微、小企业商家广告业务;维修点推荐项目收费实惠有效果!欢迎在QQ或邮箱联系!

?但是我自己有个疑问kile中显示嘚时间这是硬件or软件的时间

第一个延时函数是在晶振频率11.0592MHZ下的延时函数,而以下的函数能。

我要回帖

更多关于 51单片机延时 的文章

 

随机推荐