第六章定时计数器 教学目的和要求 本章介绍定时器/计数器的结构原理、工作方式及应用。要求理 解定时器/计数器的工作原理,熟悉定时器/计数器T0、T1的控制寄 存器,掌握定时器/计数器的各种工作方式、程序设计方法以及在系 统设计中的应用,了解定时器/计数器T2的控制寄存器、各种工作方 式和程序设计方法。 重点:定时器/计数器的结构原理、工作方式及应用 难点:定时器/计数器工作方式及应用 学时:2 定时器/计数器简称定时器,8051系列单片机有2个16位的定 时器/计数器:定时器0(T0)和定时器1(T1)。8052系列单片机增 加了一个16位定时器T2。它们都有定时和计数的功能,可用于定时 控制、延时、对外部事件计数等场合。 一、定时方式 1.硬件法 硬件定时功能完全由硬件电路完成,不占用CPU时间。但当要求 改变定时时间时,只能通过改变电路中的元件参数来实现,很不灵活。 2.软件法 软件定时是执行一段循环程序来进行时间延时,优点是无额外的 硬件开销,时间比较精确。但牺牲了CU的时间。 3.可编程定时器/计数器 MCS-51系列单片机内部提供2个可编程的定时器/计数器T0和 1
T1,它们可以用于定时或者对外部脉冲计数,还可以作为串口的波特 率发生器。定时器达到预定定时时间或者计数器计满数时,给出溢出 标志,还可以发出内部中断。 二、定时/计数器的结构及工作原理 定时/计数器的逻辑框图如下:(P91:图5一1) 品振—÷12 计数器一一中断 T端」 控制信号 1、工作原理 定时器/计数器的核心器件是一个加1计数器,它对晶振12分 频后的脉冲或外部脉冲源的脉冲计数,每来一个脉冲计数器加1,当 计数器计到全1时,再来一次脉冲,计数器的值回到0,同时计数器 最高位产生溢出,使得定时控制寄存器TCON的TF0或TF1置1,作 为计数器的溢出中断标志。 2、功能 1)定时功能:当加1计数器接内部晶振时为定时功能,每个机 器周期(等于12个晶体振荡周期)计数器加1,所以计数频率是晶 振频率的1/12。例:当品振为频率为12Mz时,计数频率为1Mz, 计数周期为1Mh1x10s=l 2)计数功能:当加1计数器接外部脉冲源时为计数功能,外部 脉冲源接在芯片的T0(P3.4)或T1(P3.5)引脚上,当T0(P3.4) 或T1(P3.5)来一个下降沿计数器加1。由于单片机对外部事件的检 2
测需要两个机器周期,所以最高的计数频率为晶振频率的1/24。例: 当晶振为频率为12NHz时,计数频率最高为0.5MHz,即最小的计数 周期为05Mm510:=05,即外部脉冲的最小周期为0,5us,最 高频率为0.5MIz, 说明:不论是定时或是计数方式,定时器T0或T1都不占用CPU 时间,除非定时器/计数器溢出,才可能中断CPU的当前操作。所以 定时器是单片机中效率高而且工作灵活的部件。 3、开关的作用 第一个模拟开关控制定时器/计数器是工作于定时还是计数方 式: 第二个模拟开关控制定时器/计数器的开启与关闭。 4、组成 定时器/计数器T0、T1和T2均为16位的特殊功能寄存器,均 由TH(高8位)和TL(低8位)组成。即:THO、TL0、TH1、TL1、TH2、 TL2 6.2、定时/计数方式和控制寄存器 一、工作方式控制寄存器TMOD TMOD的高四位用于选择T1的工作方式,低四位用于选择T0的 工作方式,TMOD控制寄存器各标志位定义如下图所示:(P94)端口 地址: 3
89H GATE C/T MI GATE C/T MI MO 定时/计数器1 定时/计数器0 各位的功能如下: 1、GATE:门控位,用于控制定时/计数器的启动是否受外部中断 控制信号的控制: (1)当GATE=0时,定时/计数器的启动与外部中断请求信号引 脚NTO(P3.2)或NTI(P3.3)无关,只要定时控制寄存器TCON的TR0或 TR1为1,则启动内部定时或外部计数器: (2)当GATE=1时,定时/计数器的启动还受外部中断请求信号 引脚NT0(P3.2)或NTI(P3.3)的影响,TR0或TR1为1,同时外部中断输 入端口NT0(P3.2)或N7(P3.3)为高电平时才肩动定时器/计数器工作。 般GATE=O。 2、C/T:定时器/计时器选择位。当C/T=1时,工作在计数器方 式:C/T=0时,工作在定时器方式。 3、M1、M0:定时器/计时器工作方式选择位,意义如下: (1)M1、M0=00:工作方式0(13位方式) (2)M1、M0=01;工作方式1(16位方式) (3)M1、M0=10:工作方式2(8位常数自动安装方式) (4)M1、M0=11:工作方式3(T0为2个8位方式,T1无此 方式) 说明:定时器初始化编程包括: 1.功能选择(定时/计数)2.位数选择(8/13/16位)
3.启动方式选择(内部启动/外部启动) 4.启动控制(启动/停止) 二、定时器控制寄存器(前一章已讲) TCON用于控制定时器/计数器的启、停、溢出标志和外部中断信 号触发方式。 其格式如下:(P85)端口地址:88 各位功能如下: TFi:T0、T1溢出位。当计数溢出时,由硬件自动使T下i置1, 并向CPU申请中断。进入中断服务程序后,TF1又被硬件自动清0。 TFi也可作为程序查询的标志位,在查询方式下由软件清0。 TRi:T0、T1运行控制位。TRi=1启动计数,TRi=O,停止工作。 IE1:外部中断1请求标志位。当检测到外部中断引脚(P3.3引 脚)上有中断请求信号时,由硬件置1:待CU响应中断后,由硬件 清0。 IT1:外部中断1方式控制标志。IT1=0,当P3.3引脚为低电平 时触发外部中断1:IT1=1,当P3.3引脚检测到下降沿信号时,触发 外部中断1。 IE0:外部中断0请求标志位。当检测到P3.2引脚上有中断请求 信号时,由硬件置1:待CPU响应后,由硬件清0。 IT0:外部中断0方式控制标志。IT0=0,当P3.2引脚为低电平 时触发外部中断0:IT0=1,当P3.2引脚检测到下降沿信号时,触发 外部中断0