通用定时器(TIMx)
除非特别说明,否则本部分内容适用于整个8x88系列。
1.1 通用定时器简介
通用定时器是由一个通过可编程预分频器驱动的32位计数器构成。它适合多种用途,包含测量输入信号的脉冲宽度(输入捕获),或者产生输出波形(PWM)。8x88系列具有两组定时器,TIM0和TIM1功能完全相同且相互独立。
1.2通用定时器主要特征
32位加计数器
3位可编程(可以实时修改)预分频器,定时器时钟=系统时钟/(预分频系数+1)
两种中断或事件类型可选择,即计数器溢出和比较结果相等触发
1.3通用定时器功能与操作说明
配置TIMx的TRR寄存器初始值
计算定时时间对应的计数值,配置TIMx的CMP寄存器值和CTR寄存器[5:3]预分频系数
配置TIMx的CTR寄存器[0],使能TIMx
使能定时器中断和总中断
1.4 TIMx寄存器
(TIMER A)TIM0寄存器基地址:0x1A103000
(TIMER B)TIM1 寄存器基地址:0x1A103010
1.4.1 TRR (偏移地址:0x00)
1.4.2 CTR (偏移地址:0x04)
1.4.3CMP (偏移地址:0x08)
1.5 GPRS使用TIMER B(timer1)
configCPU_CLOCK_HZ 131072000HZ 即131072000次为1s,每次的时间为:1/131072000
计数值:131072000/3000
6分频则:每次的时间为:1/131072000*6
所以触发比较结果相等中断的时间为:
1/131072000*6 *(131072000/3000)= 2ms