3.6.5 定时器/计数器T2
在AT89S52单片机中,增加了一个16位定时器/计数器T2,它的功能比TO、T1更强。
增强型8XX52有3个16位的定时器/计数器T0、T1、T2,与其相关的特殊功能寄存器有TL2、T H 2、RCAP2 L、RCAP2 H、T2 CON等,如表3.10所示。
表3.10 定时器/计数器2特殊功能寄存器
注意:*表示该特殊功能寄存器可位寻址。
定时器/计数器2控制寄存器(T2CON)各位的含义简述如下。
TF2:定时器溢出标志位。当定时器溢出时,置位,此位必须由软件清除。当RCLK=1或TCLK=1时,此位将不会被置位。
EXF2:定时器2外部标志位。当EXEN2=1并且T2EX引脚上出现负跳变引起捕捉或重载发生时,此位置1。如果定时器2中断使能,则EXF2=1会引起中断,此位必须由软件清除。当DCEN=1时,EXF2不会引起中断。
RCLK:接收时钟标志位。当RCLK=1时,串行口使用T2的溢出脉冲作为模式1和模式3下的接收时钟;当RCLK=0时,串行口使用T1的溢出脉冲作为接收时钟。
TCLK:发送时钟标志位,与RCLK的作用相同。
EXEN2:定时器2外部使能标志位。当EXEN2=1且T2未被用于串行口时钟时,若T2EX引脚上出现负跳变,则出现捕捉或重载。当EXEN2=0时,T2忽略T2EX引脚上的变化。
TR2:启动/停止定时器2位。此位为1时,启动定时器2。
C/T2#:定时器/计数器选择位。C/T2#=1为计数功能;C/T2#=0为定时功能。
CP/RL2#:捕捉/重载标志位。CP/RL2#=1,当EXEN2=1且T2EX引脚上出现负跳变时,捕捉发生。当CP/RL2#=0,T2溢出时,重载发生,或当EXEN2=1且T2EX引脚上出现负跳变时,重载发生。如果RCLK=1或TCLK=1,此位会被忽略,T2溢出时自动重载。
定时器/计数器2模式寄存器(T2MOD)各位的含义简述如下。
T2OE:定时器2输出允许控制位。当T2OE=1时,启动定时器/计数器T2的可编程时钟输出功能。
DCEN:定时器/计数器T2加/减计数控制位。当DCEN=1时,允许T2作为加/减计数器使用。具体的计数方式由T2EX引脚来控制,当T2EX=1时,T2进行加计数;当T2EX=0时,T2进行减计数。