51单片机定时器寄存器TH0和TL0初值的计算方法


前提:

   1. 频率:频率是单位时间内完成周期性变化的次数
   2.一个时钟周期 = 12 个机器周期

计算方式:

  假设我们单片机的晶振是11.0592MHz,那么一秒钟可产生的机器周期数  11.0592MHz / 12 = 921600 个,
  如果我们要定时50 ms,即0.05 s,所以需要921600 * 0.05 = 46080个机器周期。而如果我们的定时器工作
  在16位定时器/计数器模式,那么最大值为 2^16=65536,所以初值设置为  65536-46080 = 19456。
  十六进制写法为:
        TH0 = 0X4c;
        TL0 = 0x00;
  十进制写法为:
        TH0 = (65536-46080)/256;
        TL0 = (65536-46080)%256;
        (16位二进制数对256求模得到的是高八位,同理求余得到的是低八位)

注:初学,大神勿喷!!


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM