[工学]《单片机微型计算机原理与接口技术》第六章 单片微机的定时器.pptVIP

[工学]《单片机微型计算机原理与接口技术》第六章 单片微机的定时器.ppt

  1. 1、本文档共61页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[工学]《单片机微型计算机原理与接口技术》第六章 单片微机的定时器

第六章 单片微机的 定时器/计数器 原理及应用 ?6.5.4 运行中读定时器/计数器 ⑵ 编 程 ORG 0000H AJMP MAIN ORG 000BH ;TL0的中断入口 AJMP ITL0 ORG 00lBH ;TH0的中断入口 AJMP ITH0 ORG 0100H MAIN: MOV SP,# 60H ;设栈指针 MOV TMOD,# 23H ;设T0为方式3,T1为2 MOV TL0,#0B3H ;设TL0初值(100μs定时) MOV TH0,#66H ;设TH0初值(200μs定时) MOV TL1,#0F6H ;设TL1初值(波特率为2400) MOV TH1,# 0F6H ;设 TH1初值 SETB TR0 ;启动 TL0 SETB TR1 ;启动TH0 SETB ET0 ;允许TL0中断 SETB ET1 ;允许TH0中断 SETB EA ;CPU中断开放 AJMP $ ITL0:MOV TL0,# 0B3H ;重装定时常数 CPL P1.0 ;输出方波(200μs) RETI ITH0:MOV TH0,#66H ;重装定时常数 CPL P1.1 ;输出方波(400μs) RETI 当 TMOD 寄存器中C/T位设置为“1”时,定时器/计数器作为计数器使用,可对来自单片微机引脚 T0 或 T1 上的负跳变脉冲进行计数,计数溢出时可申请中断,也可查询溢出标志位 TFx。 例4.假如一个用户系统已使用了二个外部中断源,即INT0和,INT1,用户系统要求从P1.0引脚上输出一个5KHz的方波,并要求采用定时器/计数器作为串行口的波特率发生器,另外还需要再增加一个外部中断源。 ⑴ 为了不增加其他硬件开销,可以把T0设置为方式3,这时可把单片微机的引脚T0作为外部中断源,TL0设置为计数器,但计数器的定时常数设为FFH,这样当T0引脚上出现从“1”至“0”的负跳变时,TL0计数溢出,申请中断,相当于一个边沿触发的外部中断源。 6.5.2 计数器的应用 在T0方式3下, TH0只能做8位定时器,用来产生5KHz方波的定时。 当T0设置为方式3之后,T1就作为串行口的波特率发生器,设为方式2。 由P1.0引脚上输出5KH频率的方波,而方波周期为200μs,则要求定时时间为100μs,若采用12MHz的晶体振荡器,则机器周期为1μs。 计算时间常数: (28-TC)×1μs=100μs ∴TC=256-100=156 ⑵ 编程: ORG 0000H SJMP MAIN ORG 000BH AJMP TL0INT ;TL0中断入口 ? ORG 001BH AJMP TH0INT ;TH0中断入口 ORG 0030H MAIN: MOV TMOD,#27H ;设T0为方式3,TL0为计数 器方式,TH0为定时器方式,T1作波特率发生器,方式2。 MOV TH0,#156 ;TH0定时常数。 MOV TL0, #0FFH ;TL0计数常数 MOV TL1,#BAUD ;BAUD根据波特率算出 ;的时间常数。 MOV TH1,#BAUD MOV TCON,#55H ;置TR0和TR1为“1”,启 ;动TL0和TH0。 SETB ET0 ;允许TR0中断 SETB ET1 ;允许TR1中断 SETB EA ;允许CPU中断 SJMP $ ;中断等待。 TL0INT: MOV TL0,#0FFH ;重置计数长度 (中断处理) RETI TH0INT: MOV TH0,#156 ;重置定时常数 CPL P1.0 ;P1.0引脚输出方波 RETI ? 门控位GATE可用作对 INTx 引脚上的高电平持续时间进行计量。当GATE位设为“1”,并设定时器/计数器启动位TRx为“1”,这时定时器/计数器定时完全取决于 INTx 引脚,仅当 INTx 引脚电平为“1”时,定时器才工作,换另一角度看,定时器实际记录

文档评论(0)

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

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

1亿VIP精品文档

相关文档