单片机中从计数初值推出定时时间

计数初值 TH0=0xef; TL0=oxfo; 定时器T0采用方式1 16位计数器,晶振12M,这样定时器产生多少时间的定时,怎么算?

最大 65536 个机器周期
最大65536微秒

TH0=EF TL0=F0 时
溢出时间4112微秒

EFF0H=61424,即定时器初值是61424,12M的晶体每个指令周期1微妙,即溢出时间为65536-61424=4112微妙。12M的晶体比较好算,对于其他晶体, 建议你还是用软件吧,51单片机定时器计算工具, 网上有很多, 我们在心里默默感谢这些工具软件的作者吧。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-20
1.由于单片机的机器周期频率是震荡频率的1/12,所以由晶振12MHZ可以得到机器周期为1/12*12=1us。
2.定时器T0工作在方式1的时候计数的最大值为65536,根据公式初值M=A-T1/T2(其中T1为定时时间,T2为机器周期,A为最大计数值)。可以得到定时时间T1=(A-M)*T2
3.由给出的TH0和TL0得到初值M=61424,A=65536,T2=1us就可以计算得出:T1=4112us
希望可以帮助你。