定时器T0和T1

目录

 

1 定时器T0和T1

2 定时器/计数器的4种工作方式

2.1 方式0

2.2 方式1

2.3 方式2

2.4 方式3

1)工作方式3下的T0

2)T0工作在方式3下T1的各种工作方式


1 定时器T0和T1

     T0和T1是2个独立的16bit向上计数定时器。T0共有4种不同的操作模式:

  • 模式1:13位向上计数定时器;

  • 模式2:16位向上计数定时器;

  • 模式3:8位向上计数寄存器,并指定重装值;

  • 模式4:独立的2个8位向上计数定时器。

      T1有2种不同的操作模式:(只有T0的模式1和模式2)

  • 模式1:13位向上计数定时器;

  • 模式2:16位向上计数定时器。

    T0和T1分别支持ET0和ET1中断。

 

2 定时器/计数器的4种工作方式

2.1 方式0

        当M1、M0为00时,定时器/计数器被设置为工作方式0,这时定时器/计数器的等效框图如图2-1所示(以定时器/计数器T1为例,TMOD.5、TMOD.4 = 00)。

       定时器/计数器工作在方式0时,为13位的计数器,由TLX(X=0,1)的低5位和THX的高8位所构成。TLX低5位溢出则向THX进位,THX计数溢出则置位TCON中的溢出标志位TFX。

       图2-1中,​ 位控制的电子开关决定了定时器/计数器的工作模式:

       1)电子开关打在上面位置,T1位定时器工作模式,以系统时钟振荡器12分频后的信号作为计数信号。

       2)​ 电子开关打在下面位置,T1为计数器工作模式,计数脉冲为P3.5引脚上的外部输入脉冲,当引脚上发生负跳变时,计数器加1。

       GATE位的状态决定定时器/计数器运行控制取决于TRX一个条件还是TRX和​引脚这两个条件。

       1) GATE=0时,A点(见图2-2)电位恒为1,B点的电位仅取决于​状态。​,B点为高电平,控制断控制电子开关闭合。计数脉冲加到T1(或T0)引脚,允许T1(或T0)计数。​,B点为低电平,电子开关断开,禁止T1(或T0)计数。

         2)GATE=1时,B点电位由​的输入电平和​的状态这两个条件来确定。当​,且​时(X=0或1),B点才为1,控制端控制电子开关闭合,允许定时器/计数器计数,故这种情况下计数器是否计数是由TRX和​ 2个条件来控制的。

定时器T0和T1

                                                图2-1 定时器/计数器方式0逻辑结构框图

2.2 方式1

        当M1、M0为01时,定时器/计数器工作于方式1,这时定时器/计数器的等效电路如图2-2所示(以定时器/计数器T1为例)。

        方式1和方式0的差别仅仅在于计数器的位数不同,方式1为16位的计数器,由THX作为高8位和TLX作为低8位构成(X-0,1),方式0则为13位计数器,有关控制状态位的含义(GATE、C/T、TFX、TRX)与方式0相同。

定时器T0和T1

                                                图2-2 定时器/计数器方式1逻辑结构框图

2.3 方式2

​         方式0和方式1的最大特点是计数溢出后,计数器为全0。因此在循环定时或循环计数应用时就存在反复装入计数初值的问题。这不仅影响定时精度,而且也给程序设计带来麻烦。方式2就是针对此问题而设置的。

​        当M1、M0为10时,定时器/计数器处于工作方式2,这时定时器/计数器的等效框图如图6-4所示(以定时器T1为例,X=1)。

方式0和方式1的最大特点是计数溢出后,计数器为全0。因此在循环定时或循环计数应用时就存在反复装入计数初值的问题。这不仅影响定时精度,而且也给程序设计带来麻烦。方式2就是针对此问题而设置的。

         当M1、M0为10时,定时器/计数器处于工作方式2,这时定时器/计数器的等效框图如图2-3所示(以定时器T1为例,X=1)。

 

定时器T0和T1

                                                图 2-3 定时器/计数器方式2逻辑结构框图

       定时器/计数器的方式2为自动恢复初值的(初值自动装入)8位定时器/计数器,TLX作为常数缓冲器,当TLX计数溢出时,在置1溢出标志TFX的同时,还自动的将THX中的初值送至TLX,使TLX从初值开始重新计数。定时器/计数器的方式2工作过程如图2-4若是(X=0,1)。

       这种工作方式可以省去用户软件中重装初值的程序,简化定时初值的计算方法,可以相当精确的确定定时时间。

 

定时器T0和T1

                                                图 2-4 方式2工作过程

 

2.4 方式3

        方式3是为了增加1个附加的8位定时器/计数器而提供的,从而使MCS-51具有3个定时器/计数器。方式3只适用与定时器/计数器T0,定时器/计数器T1不能工作在方式3。T1处于方式3相当于TR1=0,停止计数(此时T1可用来作串口波特率产生器)。

1)工作方式3下的T0

        当TMOD的低2位位11时,T0的工作方式被选为方式3,各引脚与T0的逻辑关系框图如图2-5所示。

 

定时器T0和T1

 

定时器T0和T1

                                                图 2-5 各引脚与T0的逻辑关系

        定时器/计数器T0分为2个独立的8位计数器:TL0和TH0,TL0使用T0的状态控制位​、GATE、TR0、​,而TH0被固定为1个8位定时器(不能为外部计数模式),并使用定时器T1的状态控制位TR1和TF1,同时占用定时器T1的中断请求源TF1。

2)T0工作在方式3下T1的各种工作方式

       一般情况下,当T1用作串行口的波特率发生器时,T0才工作在方式3。T0处于工作方式3时,T1可定为方式0、方式1和方式2,用来作为串行口的波特率发生器,或不需要中断的场合。

(i)T1工作在方式0

        T1的控制字中M1、M0=00时,T1工作在方式0,工作示意图如图2-6所示。

 

定时器T0和T1

                                                图 2-6 T0工作在方式3时T1为方式0的工作示意图

(ii)T1工作在方式1

        T1的控制字中M1、M0=01时,T1工作在方式1,工作示意图如图2-7所示。

 

定时器T0和T1

                                                图 2-7 T0工作在方式3时T1为方式1的工作示意图

(iii) T1工作在方式2

        T1的控制字中M1、M0=10时,T1的工作方式为方式2,工作示意图如图2-8所示。

 

定时器T0和T1

                                                图 2-8 T0工作在方式3时T1为方式2的工作示意图

(iv)T1工作在方式3

      T1的控制字中M1、M0=11时,T1停止计数。

      在T0为方式3时,T1运行的控制条件只有2个,即​和M1、M0。​选择时定时器模式还是计数器模式,M1、M0选择T1运行的工作方式。

  • 知识补充,在51单片机中,为什么T1不能工作于方式3

    • 51单片机只有T0、T1,没有T2(52才有)。如果工作在方式0、方式1、方式2的话,51单片机T0、T1都可以做波特率发生器(一般时方式2做波特率发生器)。但是T0可以工作在方式3,T1不能工作在方式3。这种情况下,只能用T1作为波特率发生器,T1的字源TF1、TR1给了T0,T0工作在方式3,可以当作定时器、计数器用。而如果用T0做波特率发生器,因为T1不能工作在方式3,方式3就没法用了。