MCS单片机的定时器计数器.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
会计学;实现定时常用的三种方法: 软件定时:占用CPU时间,效率低。 用555电路:不可编程。 可编程芯片:功能强,需要另外扩展。 单片机内部有2个16位的定时/计数器:使用灵活,编程方便。--优先选用 ;6.1 定时器/计数器结构;;定时功能----计数输入信号是内部时钟脉冲,其计数脉冲来源于晶振时钟输出信号的12分频,即每个机器周期使寄存器的值加1。定时器可看做是对机器周期的计数器。所以,定时计数频率是振荡频率的1/12。 计数功能----计数脉冲来自相应的外部输入引脚,T0为,T1为。只要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发出中断请求。 设定计数次数:计数器的计数量程-计数初值。 ;二.定时器/计数器的控制寄存器 ; TF1:定时器/计数器1(T1)的溢出中断标志位。 TF0:定时器/计数器0(T0)的溢出中断标志位。 TR1:定时器/计数器1的运行控制位。通过置1或清0来启动或停止T1的计数。 TR0:定时器/计数器0的运行控制位。 单片机复位后,TCON寄存器的所有位均为0. ;2. 工作方式控制寄存器TMOD 高4位用于定时器1,低4位用于定时器0 ;第9页/共43页;② C/T:定时器方式或计数器方式选择位 C/T=0时,为定时器方式 C/T=1时,为计数器方式 ③ GATE:门控位 当GATE=0时,TCON寄存器中的TR0或TR1为1,则可立即启动定时器/计数器; 当GATE=1时,不但要TR0或TR1为1,且单片机的INT0或INT1引脚的输入要为高电平,才能启动定时器/计数器。;三.定时器/计数器0或1的工作方式;其定时时间为: (213-初值)×机器周期;2. 方式1—16位方式 16位计数,由TL0作为低8位、TH0作为高8位 ; 16位计数,由TL1作为低8位、TH1作为高8位。;3. 方式2—8位自动装入时间常数方式;方???2适合于用作较精确的脉冲信号发生器。;4. 方式3—2个8位方式;1.初始化步骤    MCS-51内部定时器/计数器是可编程的,其工作方式和工作过程均可由MCS-51通过程序对它进行设定和控制。因此,MCS-51在定时器/计数器工作前必须先对它进行初始化。初始化步骤为: (1) 根据题目要求先给定时器方式寄存器TMOD送一个方式控制字,以设定定时器/计数器的相应工作方式。 (2) 根据实际需要给定时器/计数器选送定时器初值或计数器初值,以确定需要定时的时间和需要计数的初值。; (3) 根据需要给中断允许寄存器IE选送中断控制字和给中断优先级寄存器IP选送中断优先级字,以开放相应中断和设定中断优先级。(若采用中断方式) (4) 给定时器控制寄存器TCON送命令字,以启动或禁止定时器/计数器的运行。; 2. 计数器初值的计算 定时器/计数器可用软件随时随地启动和关闭,启动时它就自动加1计数,一直计到满,即全为1,若不停止,计数值从全1变为全0,同时将计数溢出位置1并向CPU发出定时器溢出中断申请。对于各种不同的工作模式,最大的定时时间和计数数值不同。这里在使用中就会出现两个问题:  一是要产生比定时器最长的定时时间还要短的时间和比计数器最多的计数次数还要少的计数次数; 二是要产生比定时器最长的定时时间还要长的时间和比计数器最多的计数次数还要多的计数次数。; 如果计数初值设定为C,则计数器从初值C开始作加1计数到计满为全1所需要的计数值设定为D,由此便可得到如下的计算通式: C =?M?-D ① 式中,M为计数器量程,该值和计数器工作模式有关。在模式0时,M为213;在模式1时,M为216;在模式2和模式3时,M为28。;3.定时器初值的计算;在上式中,若设Tc?=?0,则定时器定时时间为最大(初值为0,计数从全0到全1,溢出后又为全0)。由于M的值和定时器工作模式有关,因此不同工作模式下定时器的最大定时时间也不一样。例如,若设单片机主脉冲晶体振荡器频率fosc为12?MHz,则最大定时时间为 模式0时: Tmax?=?213?×?1μs?=?8.192?ms 模式1时: Tmax?=?216 ×?1μs?=?

文档评论(0)

kuailelaifenxian + 关注
官方认证
文档贡献者

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

认证主体太仓市沙溪镇牛文库商务信息咨询服务部
IP属地上海
统一社会信用代码/组织机构代码
92320585MA1WRHUU8N

1亿VIP精品文档

相关文档