51单片机定时器精确定时方法

51单片机定时器精确定时方法,第1张

精确定时一般用汇编来写,如果你选用晶体

F=12MHZ,则定时器每加一就是

1uS,这样就可以设定定时器的初始值了,

如果你需要50mS的定时,定时器初始值为:65536-50000=15536

3CH,B0H

TH0=3CH

TL0=B0H

(设定时器0用来定时,工作在16位

MOV

TMOD,#11H)如果你需要更长时间定时则需要软件计时了,比如一秒,需要

(50ms

20=1000ms)

20次了,这需要在定时器0的中断程序中计算了!

1、对TH0、TL0赋值,且启动定时器(TR0=1)后,定时器开始工作。程序继续向下执行,不会停止(除非有语句要求其停止),直到定时器寄存器溢出,TF0=1。

2、启动完定时器后,晶振周期通过12分频,得到机器周期,每一个机器周期,TL0加1,TL0溢出后,TH0加1。直至TH0溢出。整个过程由硬件完成,软件只需要关心定时器模式,定时时间长短,及定时器的启动与停止。

以上就是关于51单片机定时器精确定时方法全部的内容,包括:51单片机定时器精确定时方法、51单片机 定时问题、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10129439.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存