★5.2.1  方式0(模式0)

★5.2.1 方式0(模式0)

当M1、M0的两个D1、D0位为00时,定时/计数器T0被选为工作方式0,内部13位计数器。其逻辑结构如图5-3所示。在这种方式下,16位寄存器TH0和TL0只用13位,由TH0的8位和TL0的低5位构成。TL0的高3位是不定的,可以不必理会,见表5-6。因此方式0是一个13位的定时/计数器。TL0低5位计数满时不向TL0第6位进位,当TL0的低5位计数溢出时即向TH0进位,而TH0计数溢出时向中断标志位TF0进位(称硬件置位TF0),并请求中断。因此,可通过查询TF0是否置1或考察中断是否发生(通过CPU响应)来判断定时器T0是否溢出。最大计数值213=8192(计数器初值为0时)。

978-7-111-54295-7-Chapter05-14.jpg

图5-3 T0方式0逻辑结构

表5-6 TH0、TL0构成13位结构

978-7-111-54295-7-Chapter05-15.jpg

978-7-111-54295-7-Chapter05-16.jpg=0时,为定时方式。开关接到振荡器的12分频器输出,计数器对机器周期脉冲计数。其定时时间为计数值×机器周期:(213-初值)×时钟周期×12。

若晶振频率为12MHz,时钟周期为(1/12))μs,当初值为0时,则最长的定时时间为

(213-0)×(1/12)×12ms=8.192ms

978-7-111-54295-7-Chapter05-17.jpg=1时,为计数方式。开关与外部引脚T0(P3.4)接通,计数器对来自外部引脚T0的输入脉冲计数,当外部信号发生负跳变(下降边沿)时,计数器加1。

定时器的运行控制信号K如前述,以上分析同样适合于定时器T1。