一、结构
TMR2是一个8位定时器,带一个4位宽的可编程预分频器、一个4位宽的可编程后分频器和一个可编程8位周期寄存器PR2。但是TMR2只能工作于定时器模式,因此它不仅可以为主同步串行端口MSSP模块(SPI模式)提供波特率时钟,还可以与CCP模块配合使用,提供脉宽调制PWM功能的时基信号。
二、特点
1、TMR2是一个8位宽的累加计数寄存器
2、TMR2在RAM空间内统一编址,地址为011H
3、可用软件方式直接读/写TMR2的内容
4、具有可编程的4为位预分频器,有1:1、1:4、1:16供3种分频比
5、具有可编程的4位后分频器,有16种分频比
6、带有一个8位周期寄存器PR2,这个寄存器的值由用户设置
7、只能由内部系统时钟来触发定时器的增量,因此只工作于定时器模式
8、具有溢出次数经过分频的溢出中断功能(后分频器的作用)
9、不管哪一种复位都会将TMR2清0。但TMR2和TMR1寄存器的内容不受复位的影响
10、TMR2可以被软件关闭
三、相关寄存器
1、中断控制寄存器 INTCON
2、第二外设中断使能寄存器 PIE2
3、第二外设中断标志寄存器 PIR2
4、工作寄存器 T2CON
5、周期寄存器 PR2
四、工作方式
TMR2只有一种工作方式,时钟信号由内部系统时钟4分频后获取,即取自指令周期信号。
1、用作周期可调的时基发生器
如指令周期为T,分频比为P1,周期寄存器预赋值为PR2,则该周期的计算公式为Ttmr2 = T * P1 * (PR2 + 1)。
2、用作延时可调的周期性定时器
如指令周期为T,预分频比为P1,周期寄存器预赋值为PR2,后分频比为P2,则该超时溢出周期为Ttmr2 = T * P1 * (PR2 + 1)*P2
3、用作普通定时器
如指令周期为T,预分频比为P1,Ttmr2 = (2^8 - X)* T * P1
原文:https://www.cnblogs.com/jnkdog/p/11178829.html