8051单片机定时常数如何计算

2025-03-20 20:06:33
推荐回答(2个)
回答1:

定时器中断,这要看你选接的定时器工作的方式.在TMOD中设置,,书上有..
计算是接,晶振周期的1/12来算...
比如说8051用的12M的晶振,定时时间为,1MS
选用T0定时器工作方式1(16位)
初始数算法为:10000H-(12M/12)*1000(US)=FC18H
MOV TMOD,#01H ;选定时器0,并且式作方式为1
MOV TL0,#18H ;初值低位,送定时器低位
MOV TH0,#FCH ;初值高位,送定时器高位
SETB TR0 ;定时开始

如果要加中断,还应该有:
SETB EA ;中断允许开
SETB ET0 ;定时器0中断开
加了中断后,还有中断入口地址:
定时器0中断入口地址为:0BH
要执行中断后的程序就应这样写:
ORG 0BH
.....
.....
RETI ;中断子程序结束

中断开始后,程序指针会跳到ORG 0BH的下一行开始执行"....."

回答2:

有个软件,专门算这个的,你可以下载一个,要搞清楚这些问题,最好找本教材看一下,几乎每本51单片机的教材上都有.