0.零碎知识点
(1)T0:定时、计数;T1:定时、计数、串口波特率发生器
(2)一个比较常用的数:如果要定时50ms(晶振为12MHz),需要送THx 3CH,送TLx 0B0H
(3)TMOD寄存器不能进行位寻址
1. 定时/计数器的工作原理
(1)定时器模式:对内部机器周期计数,计数值乘以机器周期就是定时时间;
计数器模式:对外部事件计数,脉冲由T0(P3.4)或T1(P3.5)引脚输入。
(2)12MHz晶振时,计数频率低于0.5MHz
解释:
2. 定时器/计数器的控制
2.1 TMOD寄存器
TMOD | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
---|---|---|---|---|---|---|---|---|
位名称 | GATE | C/T | M1 | M0 | GATE | C/T | M1 | M0 |
(1)GATE:
门控位。GATE=0时,只要TRx为1,就可启动计数器工作;GATA=1时,定时器的启动还要加上INTx引脚为高电平这一条件。
一般情况下,GATE位要取0,GATE位取1时可用来测量INTx引脚上正脉冲的宽度。
(2)C/T位:
C/T位=1,用计数器;C/T=0,用定时器
(3)M0M1:
2.2 TCON寄存器
TCON | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
---|---|---|---|---|---|---|---|---|
位名称 | TF1 | TR1 | TF0 | TR0 | IE1 | IT1 | IE0 | IT0 |
3. 定时器/计数器的工作方式
着重说下方式2和方式3:
(1)方式2:
8位自动重装载
(2)方式3:
注意:方式3下,T1不工作,T0分为两个独立的8位计数器,TH0只能作为定时器,借用T1的TR1和TF1;TH1可作为定时器和计数器
4.需要注意的问题
4.1 定时时间
在方式1下(晶振12MHz),最多可以定时65ms(65.536ms),如果定时时间小于65ms,则可以只用一个定时器,若大于65ms,则需要写循环,多次装入初始值。