3.6.3 定时器/计数器的设置

3.6.3 定时器/计数器的设置

通过设置控制字,可以对定时器进行设置和控制。定时器共有两个控制字。由软件写入TMOD和TCON两个8位寄存器,用来设置TO或T1的操作模式和控制功能。当系统复位时,两个寄存器所有位都被清0。

1.工作模式寄存器(TMOD)

工作模式寄存器(TMOD)用于控制T0和T1的操作模式。TMOD中,低4位用于控制T0,高4位用于控制T1,如表3.7所示。

表3.7 TMOD(工作模式寄存器)

1)门控制位(GATE)

当GATE=0时,用软件使TR0或TR1置1就启动了定时器,而不管INTO或INT1的电平是高电平还是低电平。

当GATE=1时,只要INTO或INT1引脚为高电平,而且用软件使TR0或TR1置1,才能启动定时器工作。

2)模式选择位C/T

C/=1,计数器模式,计数器的输入为来自T0或T1的外部脉冲。

C/=0,定时器模式,定时器对机器周期计数。

3)操作模式控制位(M1和M0)

M1和M0可形成4种编码,对应于定时器/计数器的4种操作模式,如表3.8所示。

表3.8 操作模式

2.定时器/计数器控制寄存器(TCON)

定时器/计数器控制寄存器(TCON)除可字节寻址外,各位还可以位寻址,TCON字位如表3.9所示。

表3.9 TCON(定时器/计数器控制寄存器)

1)TF1

TF1是T1溢出标志位,当T1溢出时,硬件自动使中断触发器TF1置1,并向CPU申请中断。在CPU响应进入中断服务程序后,TF1又被硬件自动清0。TF1也可以用软件清0。

2)TF0

TF0是T0溢出标志位,其功能和操作情况同TF1。

3)TR1

TR1是T1运行控制位,可用软件置1或清0来启动或关闭T1,使TR1位置1后,定时器T1便开始计数。

4)TR0

TR0是TO运行控制位,其功能及操作情况同TR1。

以上4位控制T1和TO以定时器方式运行中断。

5)外部中断位

低4位是外部中断位,它们分别是IE1、IT1、IE0和IT0,为外部中断INT1、INTO请求及请求方式控制位,复位时,TCON的所有位被清0。