定时/计数器初始化过程如下:
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 |
TR1定时/计数器T1运行控制位,TR1=1是表示启动T1运行。
TF0为定时/计数器T0溢出标志。
TR0定时/计数器T0运行控制位。
TTMOD结构
GATA | C/T | M1 | M0 | GATA | C/T | M1 | M0 |
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