44问答网
所有问题
51单片机各种位数定时器初值计算方法?
如题所述
举报该问题
推荐答案 2019-12-29
对12MHz ,1个机器周期 1us ,12/fosc = 1us
。
方式0是13位定时器,最大时间间隔 = 2^13 = 8.192ms
方式1是16位定时器,最大时间间隔 = 2^16 = 65.536ms
方式2是8位定时器,最大时间间隔 = 2^8 = 0.256ms =256 us
方式3 仅适用于T0,此时T0分成两个8位计数器,T1停止计数
当选用定时器的方式1时,设机器周期为Tcy,定时器产生一次中断的时间为t,那么需要计数的个数N=t/Tcy,装入THX和TLX中的数分别为:
THX = (2^16 - N)/256 TLX = (2^16 -N )%256(此处的X为定时器0或定时器1)
公式为:(2^y - X)*Tcy = t
Tosc= 1/ fosc
一个机器周期 = 12个时钟周期 = 12/fosc
溢出速率 = 1 / 溢出时间
故:初值X = 2^y – t/Tcy
THX = 高八位
TLX = 低八位
注:
X:定时器初值
N:计数值
y:定时器工作方式
fosc:晶振频率
Tcy:机器周期,Tosc:时钟周期
Tcy = 1/Tosc
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://44.wendadaohang.com/zd/YVYRYZD6D6W6YWY6D3.html
其他回答
第1个回答 2019-11-21
就
51单片机
而言,定时器只有8位和16位两种,没达到“各种”那么多。而计算初值的方法是相同的,区别只是8位数是用256作基数,16位用65536作基数。根据
晶振
频率计算机周期,Tc=12/fosc,设定时的时间为Td,则初值X=基数-Td/Tc
本回答被网友采纳
第2个回答 2019-11-23
各种位数,常用的是 16 位数。
8 位,也有一些用武之地。
13 位,基本没有用的了。
书上,都有例题。看书就行。
难倒,楼主对书,还有什么疑问吗?
相似回答
大家正在搜
相关问题
51单片机定时器初值怎样计算
单片机定时器初值计算方法有哪些?
单片机定时器初值计算方法
单片机定时器初值计算
51单片机定时器初值公式
89C51单片机定时器初值怎么计算
单片机中 定时器/计数器 的计数初值是怎么计算得出的?(计数...
51单片机串口通信定时器初值怎么计算啊?公式和计算原理麻烦说...