单片机之定时/计数器

时间:2021-07-04 23:33:17

定时/计数器初始化过程如下:

1.设定定时/计数器响应的工作模式,即给TMOD送一个方式控制字。

2.给c/T选送初值,确定需要的定时时间及计数的初值。

3.开放相应的中断和设定中断优先级,即给中断允许寄存器IE送中断控制字。

4.给TCON送命令字,以启动或禁止C/T运行。

例:

EA=1  ;             //允许所有中断

ET0=1;           //允许T0中断

TMOD=0X01;  //T0方式计时50ms

TH0=-50000/256;  //定时器T0的高四位赋值

TL0=-50000/256; //定时器T0的低四位赋值

TR0=1 ;              //开中断启动定时器


                                                                  TCON结构

TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
T F1为定时/计数器T1溢出标志,当T1被允许计数后,T1从初值加1,至最高为产生溢出,TF置“1”既表示计数器溢出又表示请求中断。

TR1定时/计数器T1运行控制位,TR1=1是表示启动T1运行。

TF0为定时/计数器T0溢出标志。

TR0定时/计数器T0运行控制位。

                                            TTMOD结构

GATA C/T M1 M0 GATA C/T M1 M0
GATA:门控位

GATA=0时,定时/计数器只有TCON中的的TR控制。

GATA-1时,同时受TR和外中断输入信号双重控制。

C/T:计数/定时选择方式位

C/T=1是为计数方式,C/T=0时为定时方式。

M1M0为工作方式选择位:

M1M0 工作方式 功能
00 方式0 13位计数器
01 方式1 16位计数器
10 方式2 两个8位计数器,初值自动填入
11 方式3 两个8位计数器,仅适用于T0