第6章 MCS-51的定时器.pptxVIP

  • 12
  • 0
  • 约6.76千字
  • 约 20页
  • 2017-03-30 发布于广东
  • 举报
第6章 MCS-51的定时器.pptx

第6章 MCS-51的定时器/计数器 6.1 定时器与计数器的计数与定时 两个可编程的定时器/计数器T1、T0。 两种工作模式: (1)计数器工作模式 (2)定时器工作模式 4种工作方式(方式0-方式3)。 6.2 定时器/计数器的控制 一、定时方式寄存器TMOD 定时器方式控制寄存器TMOD在特殊功能寄存器中,字节地址为89H,无位地址。TMOD的格式如下: TMOD的高4位用于T1,低4使用于T0,4种符号的含义如下: GATE:门控制位。GATE和软件控制位TR、外部引脚信号INT的状态,共同控制定时器/计数器的打开或关闭。 C/ :定时器/计数器选择位。C/ =1,为计数器方式;C/ =0,为定时器方式。 M1M0:工作方式选择位,定时器/计数器的4种工作方式由M1M0设定。具体见下表。 二、定时控制寄存器TCON TCON在特殊功能寄存器中,字节地址为88H,位地址(由低位到高位)为88H~8FH,由于有位地址,十分便于进行位操作。 TCON的作用是控制定时器的启、停,标志定时器溢出和中断情况。其中,TFl,TRl,TF0和TR0位用于定时器/计数器;IEl,ITl,IE0和IT0位用于中断系统。 各位定义如下: TF1:定时器T1溢出标志位。当定时器T1计满溢出时,由硬件使TF1置“1”,并且申请中断。进入中断服务程序后,由硬件自动清“0”;在查询方式下用软件清“0”。 TR1:定时器T1运行控制位。由软件清“0”关闭定时器T1。当GATE=1,且 为高电平时,TR1置“1”启动定时器T1;当GATE=0,TR1置“1”启动定时器T1。 TF0:定时器T0溢出标志位。当定时器T0计满溢出时,由硬件使TF0置“1”,并且申请中断。进入中断服务程序后,由硬件自动清“0”;在查询方式下用软件清“0”。 6.2 定时器/计数器的控制 TR0:定时器T0运行控制位。由软件清“0”关闭定时器T0。当GATE=1,且 为高电平时,TR0置“1”启动定时器T0;当GATE=0,TR0置“1”启动定时器T0。 IE1:外部中断1请求标志。 IT1:外部中断1触发方式选择位。 IE0:外部中断0请求标志。 IT0:外部中断0触发方式选择位。 6.2 定时器/计数器的控制 6.3 定时器/计数器的初始化 初始化的步骤一般如下: 1. 确定工作方式(即对TMOD赋值); 2. 预置定时或计数的初值(可直接将初值写入TH0、TL0或TH1、TL1); 3. 根据需要开放定时器/计数器的中断(直接对IE位赋值); 4. 启动定时器/计数器(若已规定用软件启动,则可把TR0或TR1置“1”;若已规定由外中断引脚电平启动,则需给外引脚步加启动电平。当实现了启动要求后,定时器即按规定的工作方式和初值开始计数或定时)。 下面介绍一下确定时时/计数器初值的具体方法。 因为在不同工作方式下计数器位数不同,因而最大计数值也不同。 现假设最大计数值为M,那么各方式下的最大值M值如下: 方式0:M=213=8192 方式1:M=216=65536 方式2:M=28=256 方式3:定时器0分成两个8位计数器,所以两个M均为256。 因为定时器/计数器是作“加1”计数,并在计数满溢出时产生中断,因此初值X可以这样计算: X=M-计数值 6.4 定时器/计数器的工作方式 一、工作方式0 图6-2 定时器T0工作于方式0时的逻辑电路结构图 方式0是13位计数结构的工作方式,其计数器由TH0全部8位和TL0的低5位构成。T0工作于方式0时的逻辑电路结构图如图6-2所示,当TL0的低5位计数溢出时,向TH0进位,而全部13位计数溢出时,则向计数溢出标志位TF0进位。 在方式0下,当为计数工作方式时,计数值的范围是: 1~8192(213) 当为定时工作方式时,定时时间t的计算公式为: ????????? t=(213-计数初值)×晶振周期×12?? 或 t=(213-计数初值)×机器周期 其时间单位与晶振周期或机器周期相同(μs)。 【例题6-1】 当某单片机系统的外接晶振频率为6MHz,该系统的最小定时时间是多少?最大定时时间是多少? 解:最小定时时间??? t=[213-(213-1)]×[1/(6×106)]×12=2×10-6s=2(μs) 最大定时时间 t=(213-0)×[1/(6×106)]×12=16384×10-6s=16384(μs) 6.4 定时器/计数器的工作方式 【例题6-2】 设某单片机系统的外接晶振频率为6MHz,使用定时器T1以方式0产生周期为500μs的等宽正方波连续脉冲,并由P1.0输出。以查询方式完成。 1.计算计数初值 欲产生500μs的等宽正方波脉冲,只需在P1.0端以250μs为周期交替

文档评论(0)

1亿VIP精品文档

相关文档