设为首页  加入收藏  

主要目录
 ·MCS-48系列单片机简介
 ·MCS-51单片机主要应用特性
 ·MCS-51单片机内部结构
 ·MCS-51单片机的指令时序
 ·MCS-51单片机输入输出口
 ·MCS-51单片机存储器结构
 ·MCS-51定时器与中断系统
 ·MCS-51单片机串行通信口
点击浏览芯片信息
点击浏览芯片信息
点击浏览芯片信息
编者的话
浏览其它领域内容
速转到
当前位置>>中源单片机首页>>MCS-51单片机结构原理分析  

MCS-51定时/计数器
上一页 下一页 [1],[2],[3],[4]

    MCS-51的单片机内有两个16位可编程的定时/计数器,它们具有四种工作方式,其控制字和状态均在相应的特殊功能寄存器中,通过对控制寄存器的编程,就可方便地选择适当的工作方式。下面我们对它们的特性进行阐述。

     定时/计数器的工作方式
    MCS-51单片机内部的定时/计数器的结构如图1所示,定时器T0特性功能寄存器TL0(低8位)和TH0(高8位)构成,定时器T1由特性功能寄存器TL1(低8位)和TH1(高8位)构成。特殊功能寄存器TMOD控制定时寄存器的工作方式,TCON则用于控制定时器T0和T1的启动和停止计数,同时管理定时器T0和T1的溢出标志等。程序开始时需对TL0、TH0、TL1和TH1进行初始化编程,以定义它们的工作方式和控制T0和T1的计数。

    TMOD和TCON这两个特殊功能寄存器的格式参见下表:

    [1]. 定时/计数器的方式控制字TMOD,字节地址为89H,其格式如表1:
定时/计数器内部结构
  表1  TMOD寄存器结构
D7 D6 D5 D4 D3 D2 D1 D0
GATA M1 M0 GATA M1 M0
←T1方式字段→ ←T0方式字段→


    [2]. 定时器控制积存器TCON,字节地址为88H,位地址为88H—8FH,其格式如表2:

  表2  TCON结构
D7 D6 D5 D4 D3 D2 D1 D0
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0


     TMOD和TCON各位的意义和用途我们将在下面的章节中予以介绍,需要注意的是,TCON的D0—D3位与中断有关,我们会在中断的内容中加以说明,MCS-51的定时/计数器共有四种工作方式,我们逐个进行讨论。

     工作方式0
    定时/计数器0的工作方式0电路逻辑结构见图2(定时/计数器1与其完全一致),工作方式0是13位计数结构的工作方式,其计数器由TH的全部8位和TL的低5位构成,TL的高3位没有使用。当=0时,多路开关接通振荡脉冲的12分频输出,13位计数器以次进行计数。这就是定时工作方式。当=1时,多路开关接通计数引脚(To),外部计数脉冲由银南脚To输入。当计数脉冲发生负跳变时,计数器加1,这就是我们常称的计数工作方式。
定时/计数器内部结构
    不管是哪种工作方式,当TL的低5位溢出时,都会向TH进位,而全部13位计数器溢出时,则会向计数器溢出标志位TF0进位。

    我们讨论门控位GATA的功能,GATA位的状态决定定时器运行控制取决于TR0的一个条件还是TR0和INT0引脚这两个条件。当GATA=1时,由于GATA信号封锁了与门,使引脚INT0信号无效。而这时候如果TR0=1,则接通模拟开关,使计数器进行加法计数,即定时/计数工作。而TR0=0,则断开模拟开关,停止计数,定时/计数不能工作。

    当GATA=0时,与门的输出端由TR0和INT0电平的状态确定,此时如果TR0=1,INT0=1与门输出为1,允许定时/计数器计数,在这种情况下,运行控制由TR0和INT0两个条件共同控制,TR0是确定定时/计数器的运行控制位,由软件置位或清“0”。

    如上所述,TF0是定时/计数器的溢出状态标志,溢出时由硬件置位,TF0溢出中断被CPU响应时,转入中断时硬件清“0”,TF0也可由程序查询和清“0”。

    在工作方式下,计数器的计数值范围是:

          1—8192(213

    当为定时工作方式时,定时时间的计算公式为:

         (213—计数初值)╳晶振周期╳12

    或   (213—计数初值)╳机器周期

    其时间单位与晶振周期或机器周期相同。

    如果单片机的晶振选为6.000MHz,则最小定时时间为:

        [213—(213—1)]╳1/6╳10-6╳12=2╳10-6(s)=2(us)

        (213—0)╳1/6╳10-6╳12=16384╳10-6(s)=16384(us)。

     工作方式1
    当M1,M0=01时,定时/计数器处于工作方式1,此时,定时/及数器的等效电路如图3所示,仍以定时器0为例,定时器1与之完全相同。
定时/计数器内部结构
    可以看出,方式0和方式1的区别仅在于计数器的位数不同,方式0为13位,而方式1则为16位,由TH0作为高8位,TL0为低8位,有关控制状态字(GATA、、TF0、TR0)和方式0相同。

    在工作方式1下,计数器的计数值范围是:

          1—65536(216

    当为定时工作方式1时,定时时间的计算公式为:

         (216—计数初值)╳晶振周期╳12

    或   (216—计数初值)╳机器周期

    其时间单位与晶振周期或机器周期相同。

    如果单片机的晶振选为6.000MHz,则最小定时时间为:

        [213—(216—1)]╳1/6╳10-6╳12=2╳10-6(s)=2(us)

        (216—0)╳1/6╳10-6╳12=131072╳10-6(s)=131072(us)。


 继续浏览MCS-51单片机定时/计数器》内容,请点击[下一页]