第七章 队毹时器计数器.pptVIP

  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文档。上传文档
查看更多
第七章 队毹时器计数器

在测控技术中,往往需要定时检测某个参数,或按一定的时间间隔来进行某种控制。还有一些控制是按对某种事件的计数结果进行的。因此几乎所有单片机内部都设置了定时/计数器,以简化微机测控系统的设计。 ??????? MCS-51系列单片机典型产品8051等有两个16位定时器/计数器T0,T1;8052等单片机有三个16位定时器/计数器T0、T1和T2。它们都可以用作定时器或外部事件计数器。;7.4 51内部定时/计数器及其应用;定时/计数器的实质;一、内部定时/计数器结构和工作原理;1、定时/计数器的结构;每输入一个脉冲,计数器加1,当加到计数器各位都为1时,再输入一个脉冲,计数器各位全变为0,溢出,中断标志置1(SFR中TCON的TF0、TF1),从而向CPU申请中断。由预置计数值就可以算出从加1计数器启动到计满溢出所需的时间,即定时时间。 8位-256;13位-8192;16位-65536; 对外部脉冲计数时,当脉冲有一个高电平到低电平“1”-“0”跳变时,计数器加1,且在每个机器周期的S5P2采样外部输入,若前一个机器周期采样值为1,后一个机器周期采样值为0,则计数器加1。 由于识别一个从1到0的负跳变信号需要两个机器周期(24个振荡周期),所以最高的计数频率为系统时钟频率的1/24;两个输入脉冲的最小间隔应不小于两个机器周期。又因为一个机器周期对信号采样一次,因此输入信号的电平宽度至少应持续一个机器周期。;定时原理 输入脉冲不是外部脉冲源,而是一个晶体振荡器的脉冲源。 输入脉冲是由内部振荡器的输出经12分频送来,所以定时器可看做对机器周期的计数。 晶振 12MHz,机器周期 1us,定时器每接收一个脉冲是1us 晶振6MHz, 机器周期 2us,定时器每接收一个脉冲是1us ;对于16位计数器,最大定时时间是216个脉冲的时间。 则定时时间△T=(216-X)*T T:输入脉冲周期,T=12/f μs(f为晶振频率1.2~12MHz)如为12MHz,则T=1μs X:计数器初值(由程序输入) 对于12MHz晶体,T=1μs,最大定时△T=65.536ms;对于6MHz晶体,T=2μs,最大定时△T=131ms 常使用:X=216-△T/T;例:系统时钟频率为12MHz,要产生1ms定时,求初值X T=12/12=1μs 若为16位计数器 X=216-1000/1=64536=0FC18H 若为13位计数器 X=213-1000/1=8192-1000=7192=1C18H 不能采用8位计数器;二、T/C的特殊功能寄存器SFR;T/C的特殊功能寄存器SFR;3、定时器方式选择寄存器:TMOD;定时器方式选择寄存器:TMOD;4、定时器控制寄存器:TCON;定时器控制寄存器:TCON;三、 四种工作方式;1、方式0;方式0;计数初值问题;此种方式与MCS-48系列兼容,如果不是为了兼容的目的,一般不用方式0. 方式0的全部功能,方式1都可以代替。 如果要重复定时或计数,则须重新设置时间常数初值;2、方式1;3、方式2 (计数初值自动再装入);3、方式2;计数初值自动再装入的实现; 与方式0和方式1不同处: 只使用TL0做8位计数器,最大计数值255; 最大定时时间(晶振12MHz时): 256?s 用于需要重复定时和计数的场合。;4、 方式3;方式 3(两个 8 位独立计数器);T0工作在方式3时, T1工作在方式2的逻辑图;四、应用;中断相关寄存器;设计一个能产生t=1ms 的周期信号发生器,试编程.;*;*; 当实际应用系统中应用系统的2个外部中断源已被占用,现要求增加1个外部中断源,而片内定时器/计数器没有使用时,可利用定时器/计数器扩展外部中断源,方法如下:将定时器/计数器设置为计数模式,计数初值设定为满值,将待扩展的外部中断源接到定时器/计数器。当从该引脚输入一个下降沿信号,计数器加1后产生定时器/计数器溢出中断。因此定时器/计数器可作为扩展中断源的中断输入端。;例:利用定时器/计数器T0扩展一个外部中断源,T0设置为方式2(自动重装初值方式)外部计数工作模式,TH0、TH1初值均为0FFH,初始化程序如下: INIT_T0: MOV TMOD,#06H; T0计数方式2 MOV TH0,#0FFH; MOV TH0,#0FFH; SETB ET0; T0开中断; SETB EA; 开总中断 SETB

文档评论(0)

junzilan11 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档