[通用8051核FLASH系列] TIM0时钟配置1ms计时

[复制链接]
1521|1
 楼主| louliana 发表于 2024-7-23 22:46 | 显示全部楼层 |阅读模式


  1. /*********************************TIM0时钟配置初始化************************************/
  2. void Timer0_init(void)
  3. {

  4.     TCON1 = 0x00;                          //Tx0定时器时钟为Fosc
  5.     TMOD = 0x00;                          //16位重装载定时器/计数器

  6.     //Tim0计算时间     = (65536 - 0xFACB) * (1 / (Fosc /Timer分频系数)) = 1333 / (16000000 / 12) = 1 ms

  7.     //定时1ms 反推初值     = 65536 - ((1/1000) / (1/(Fosc / Timer分频系数)))
  8.     //               = 65536 - ((1/1000) / (1/(16000000 / 12))) = 65536 - 1333 = 0xFACB
  9.             
  10.     TH0 = 0xFA;
  11.     TL0 = 0xCB;                              //T0定时时间1ms
  12.     IE |= 0x02;                              //打开T0中断
  13.     TCON |= 0x10;                          //使能T0   
  14.     EA = 1;                                    //打开总中断
  15. }


LEDyyds 发表于 2024-7-25 10:36 | 显示全部楼层
定时器计时很常见
您需要登录后才可以回帖 登录 | 注册

本版积分规则

50

主题

1627

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部