DSP 定时器/计数器原理及设计举例 1、定时器结构 定时器的组成框图如图1 所示
它有3 个 16 位存储器映像寄存器:TIM、 PRD 和 TCR
这3个寄存器在数据存储器中的地址及其说明如表1 所示
定时器控制寄存器(TCR)位结构如图2所示,各控制位和状态位的功能如表2 所示
(说明:图中包括,一个16 位的主计数器(TIM)和一个4 位预定标计数器(PSC)
TIM 从周期寄存器PRD 加载,PSC 从周期寄存器TDDR 加载
1 典型操作顺序: (1) 在每个CLKOUT 脉冲后PSC 减 1,直到它变为0
(2) 在下一个CLKOUT 周期,TDDR 加载新的除计数值到PSC,并使TIM 减 1
(3) 以同样方式,PSC 和 TIM 连续进行减操作,直到TIM 减为0
(4) 下一个CLKOUT 周期,将定时器中断信号(TINT)送到CPU,同时又用另一脉冲送到TOUT 引脚,把新定时器计数值从PRD 加载到TIM,并使PSC 再次减1
因此,定时器中断的速率为 1
2 定时器编程 ( 1) TIM:定时器中的当前值
( 2) PRD:正常情况,当TIM 减到0 后,PRD 中的时间常数自动地加载到TIM
系统复位( =1)或定时器复位(TRB=1)时,PRD 中的时间常数重新加载到TIM
( 3)控制寄存器(TCR)包含的控制位有下列功能: ①控制定时器模式; ②指定定时器预先定标计数器的当前计数值; ③重新加载定时器; ④启动、停止定时器; ⑤定义定时器的分频系数
图 1 定时器组成框图 TINT速率= )()(频率1PRD1TDDRCLKOUT (说明:TDDR(Timer Divide-Down Ratio):复位时,TDDR 各位清零;PSC(Timer Prescaler Counter): PSC 可被TCR 读