第六章 MCS-51单片机的定时器计数器.ppt

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章 MCS-51单片机的定时器计数器

第六章 MCS-51单片机的定时器/计数器 实现定时常用的三种方法: 软件定时:占用CPU时间,效率低。 用555电路:不可编程。 可编程芯片:功能强,需要另外扩展。 单片机内部有2个16位的定时/计数器:使用灵活,编程方便。--优先选用 6.1 定时器/计数器结构 一.定时器/计数器的结构及工作原理 MCS-51单片机内部有两个16位可编程的定时器/计数器,即定时器T0和定时器T1。每个定时器/计数器的基本部件是两个8位的计数器(其中TH1、TL1是T1的计数器,TH0、TL0是T0的计数器)拼装而成。它们是采用加“1”方式工作的。    两个特殊功能寄存器(TMOD和TCON)用来对定时器/计数器的工作方式进行选择和控制。   8051单片机的定时器/计数器结构如下图所示。 定时功能----计数输入信号是内部时钟脉冲,其计数脉冲来源于晶振时钟输出信号的12分频,即每个机器周期使寄存器的值加1。定时器可看做是对机器周期的计数器。所以,定时计数频率是振荡频率的1/12。 计数功能----计数脉冲来自相应的外部输入引脚,T0为P3.4,T1为P3.5。只要T0或T1的引脚上有一个1到0的负跳变,相应的计数器就加1. 在TMOD中,各有一个控制位(C/T),分别用于控制定时/计数器T0和T1工作在定时器方式还是计数器方式。 定时模式,对内部机器周期计数 定时时间 t =计数值N x Tcy 计数模式,对外部事件脉冲计数 计数脉冲周期要大于2 Tcy T0和T1计数器都只能递增计数,当16位计数器的计数值增加到0FFFFH时,再输入1个脉冲就会使计数器的值回零,并发生溢出信号,置相应的标志位(TCON中TF0或TF1置1), 向CPU发出中断请求。 设定计数次数:计数器的计数量程-计数初值。 二.定时器/计数器的控制寄存器 与定时器/计数器有关的控制寄存器有: 1. 定时器控制寄存器TCON TF1:定时器/计数器1(T1)的溢出中断标志位。 TF0:定时器/计数器0(T0)的溢出中断标志位。 TR1:定时器/计数器1的运行控制位。通过置1或清0来启动或停止T1的计数。 TR0:定时器/计数器0的运行控制位。 单片机复位后,TCON寄存器的所有位均为0. 2. 工作方式控制寄存器TMOD 高4位用于定时器1,低4位用于定时器0 ② C/T:定时器方式或计数器方式选择位 C/T=0时,为定时器方式 C/T=1时,为计数器方式 ③ GATE:门控位 当GATE=0时,TCON寄存器中的TR0或TR1为1,则可立即启动定时器/计数器; 当GATE=1时,不但要TR0或TR1为1,且单片机的INT0或INT1引脚的输入要为高电平,才能启动定时器/计数器。 三.定时器/计数器0或1的工作方式 1. 方式0—13位方式。由TL0的低5位和TH0的8位组成。TL0的5位计数溢出后,TH0的计数加1,直到全部的13位计数值为全1后,下一个计数脉冲的到达将使TF0置位为1,向CPU发出中断请求,同时把计数器变为全“0”。 2. 方式1—16位方式 16位计数,由TL0作为低8位、TH0作为高8位 ; 16位计数,由TL1作为低8位、TH1作为高8位。 3. 方式2—8位自动装入时间常数方式 TL0作为8位内部计数器,TH0作为重装初值寄存器,在TL0计数溢出置位TF0标志的同时,由硬件控制直接将重装初值装入TL0,开始新一轮的计数,如此不断循环。 方式2和方式0、1最大的差别就是计数器的初值是由硬件控制自动装入的。 方式0、1一旦计数溢出,就表示计数器已回0,如果要按照原先的初值重新计数,就需要通过软件重装计数器初值。 4. 方式3—2个8位方式 仅T0可以工作在方式3,T1处于方式3时停止计数。此时,T0分成2个独立的计数器—TL0和TH0,前者用原来T0的控制信号(TR0、TF0),后者用原来T1的控制信号(TR1、TF1)。 (1)TH0由TR1启动/停止,溢出TF1 (2)TL0由TR0启动/停止,溢出TF0 (3)TH0只能定时,TL0可以定时/计数,且都是8位。 1.初始化步骤    MCS-51内部定时器/计数器是可编程的,其工作方式和工作过程均可由MCS-51通过程序对它进行设定和控制。因此,MCS-51在定时器/计数器工作前必须先对它进行初始化。初始化步骤为: (1) 根据题目要求先给定时器方式寄存器TMOD送一个方式控制字,以设定定时器/计数器的相应工作方式。 (2) 根据实际需要给定时器/计数器选送定时器初值或计数器初值,以确定需要定时的时间和需要计数的初值。 (3) 根据需要给中断允许寄存器IE选送中断控制字和给中断优

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档