14-2812DSP-09CPU定时器精要.ppt

2 电气与信息工程学院 DSP技术及应用 电气与信息工程学院 281x中断系统 9.1 概述 定时器是用来准确控制时间的。 X281x芯片内部具有3个32位CPU定时器: Timer0、Timer1、Timer2。 用户能用的定时器:Timer0。 281x中断系统 9.2 CPU定时器内部结构 281x中断系统 CPU定时器工作示意图 281x中断系统 CPU定时器中断 F2812/10 PIE Interrupt Assignment Table INTx.8 INTx.7 INTx.6 INTx.5 INTx.4 INTx.3 INTx.2 INTx.1 INT1 WAKEINT TINT0 ADCINT XINT2 XINT1 PDPINTB PDPINTA INT2 T1OFINT T1UFINT T1CINT T1PINT CMP3INT CMP2INT CMP1INT INT3 CAPINT3 CAPINT2 CAPINT1 T2OFINT T2UFINT T2CINT T2PINT INT4 T3OFINT T3UFINT T3CINT T3PINT CMP6INT CMP5INT CMP4INT INT5 CAPINT6 CAPINT5 CAPINT4 T4OFINT T4UFINT T4CINT T4PINT INT6 MXINT MRINT SPITXINTA SPIRXINTA INT7 INT8 INT9 SCITXINTB SCIRXINTB SCITXINTA SCIRXINTA INT10 INT11 INT12 ECAN0INT ECAN1INT 281x中断系统 9.3 CPU定时器寄存器 TIMERxTIM 寄存器(x=0,1,2) CPU定时器计数寄存器中的低 16 位。TIMH 寄存器含32 位计数值中的高16 位。每过TDDRH:TDDR+1 个时钟时TIMH:TIM 就减1。减到0 时保存在 PRDH:PRD 寄存器中的周期值被重载入TIMH:TIM 寄存器,同时产生定时器中断 TINT 信号。 TIMERxTIMH 寄存器(x=0,1,2) 281x中断系统 TIMERxPRD 寄存器(x=0,1,2) CPU定时器周期寄存器PRDH:PRD:PRD寄存器含32 位周期值中的低 16 位。PRDH 寄存器含32 位周期值中的高16 位。 TIMH:TIM减到0 时,在下一个定时器输入时钟的开始, PRDH:PRD:PRD 寄存器中的周期值重新载入TIMH:TIM 寄存器。 当定时器控制寄存器TCR 中的TRB 位置1 时,重载也会发生。 TIMERxPRDH 寄存器(x=0,1,2) 281x中断系统 TIMERxTCR 寄存器(x=0,1,2) 15 TIF 定时器中断标志位,定时器每减到0 后就变1,写1 后清除。 14 TIE 定时器中断使能位。定时器减到0 时该位置1,定时器发出中断请求。 11-10 FREE SOFT 定时器仿真模式,在高级语言调试环境下,如果遇到断点,这些位决定定时器的状态。在遇到软件断点后,如果FREE=1,定时器继续运行;如果 FREE=0,且SOFT=0,定时器在TIMH:TIM 寄存器下一次减操作时立即停止;如果 FREE=0,且SOFT=1,定时器在TIMH:TIM 寄存器减到 0 时才停止。 5 TRB 定时器重载位。置1 时,TIMH:TIM 自动将PRDH:PRD 的值载入,且PSCH:PSC 自动将TDDRH:TDDR 的值载入。 4 TSS 定时器停止状态位。置1 时定时器停止,置0 时定时器开始工作。复位时TSS为0,CPU 定时器立即开始工作。 281x中断系统 TIMERxTPR 寄存器(x=0,1,2) TIMERxTPRH 寄存器(x=0,1,2) 15-8 PSC 定时器预定标计数器。当PSCH:PSC 大于0 时,每个时钟SYSCLKOUT都使 PSCH:PSC 减1。减到0 后的第一个时钟会使TDDRH:TDDR 的值载入 PSCH:PSC,同时TIMH:TIM 减1。当TRB 由软件置1 时重载也会发生。PSCH:PSC 的值不能由软件设置,只能由TDDRH:TDDR载入。 复位后 PSCH:PSC 为0。 7-0 TDDR CPU 定时器分频数。每TDDRH:TDDR+1 个SYSCLKOUT 时钟会使TIMH:TIM 减1。复位时TDDRH:TDDR 清0。PSCH:PSC 为0 后的第一个时钟,或软件将 TCR 寄存器中的TRB 位置1 时都会使TDDRH:DDR的值重新载入PSCH:PSC。 281x中断系统 9.4 CPU定时器一个周期所计量的时间 假设系统时钟SYSCLKOUT的

文档评论(0)

1亿VIP精品文档

相关文档