定时器工作方式

Posted awen生活愉快

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了定时器工作方式相关的知识,希望对你有一定的参考价值。

1、工作方式控制寄存器(TMOD)

TMOD(89H)
地址90H8FH8EH8DH8CH8BH8AH89H
符号GATEC/TM1M0GATEC/TM1M0

1)GATE:门控制位。
 GATE=1,外部启动方式(也曾硬件启动方式),定时/计数器的启动受外部输入引脚 I N T 0 ‾ \\overline{INT0} INT0 I N T 1 ‾ \\overline{INT1} INT1以及运行启动位TR0或TR1的控制。
 GATE=0,内部启动方式(也曾软件启动方式),定时/计数器的启动不受外部输入引脚 I N T 0 ‾ \\overline{INT0} INT0 I N T 1 ‾ \\overline{INT1} INT1的控制,只受运行启动位TR0或TR1的控制。

2)C/ T ‾ \\overline{T} T:定时器/计数器功能选择位。
 C/ T ‾ \\overline{T} T=0,为定时器模式,内部计数器对晶振脉冲12分频后的脉冲计数,该脉冲周期等于机器周期。
 C/ T ‾ \\overline{T} T=1,为计数器模式,计数器对外部输入引脚T0(P3.4)或T1(P3.5)的外部脉冲(负跳变)计数,允许最高计数频率为晶振频率的1/24。

3)M1、M0:工作方式控制位。具体情况如下:

在这里插入图片描述

2、定时器/计数器的工作方式(以T0为例)

1)工作方式0
 方式0功能是13位计数,由TH0的8位和TL0的低5位组成,当TL0的低5位溢出时,向TH0进位,当TH0溢出时,置位TCON的TF0标志,向CPU请求中断。
①计数范围:1~ 2 13 2^{13} 213
②计数计算:计数值= 2 13 2^{13} 213-计数初值
③定时计算:定时时间= 2 13 2^{13} 213-定时初值

2)工作方式1
 方式1功能是16位计数,当TH0溢出时,置位TCON的TF0标志,向CPU请求中断。
①计数范围:1~ 2 16 2^{16} 216,即:1~65536
②计数计算:计数值= 2 16 2^{16} 216-计数初值
③定时计算:定时时间= 2 16 2^{16} 216-定时初值

3)工作方式2
 当TL0的计数溢出时,预存在TH0的的初值会自动加载到TL0,然后重新开始计数。计数值有限,最大为255。该方式适合应用于循环定时或循环计数应用,比如产生固定脉宽的脉冲,此外还可以用作串行数据通信的波特率发生器。

4)工作方式3
 工作方式3只适用于定时器T0,如果使定时器T1为工作方式3,则定时器T1将处于关闭状态。
 当T0处于工作方式3时,TH0和TL0分成两个独立的8位计数器。其中,TL0既可以用作定时器,也可以用作计数器,并使用原有T0的所以控制位及其定时器溢出标志和中断源。TH0只能用作定时器,并使用T1的控制位TR1、溢出标志位TF1和中断源。
 通常,T0不运行于工作方式3,只有当T1处于工作方式2,并且不要求中断的条件下才可能使用。这时,T1往往用作串行口波特率发生器,TH0用作定时器,TL0用作定时器或计数器。

以上是关于定时器工作方式的主要内容,如果未能解决你的问题,请参考以下文章

我想用C51单片机的定时器0工作方式2输出一个PWM。它的频率要怎么设置???

定时器工作方式

定时器工作方式

定时器工作方式

定时器工作方式

定时器计数器工作方式