单片机的定时系统.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文档。上传文档
查看更多
TLO和THO组成16位的定时/计数器T0,TL1和TH1组成16位的定时/计数器T1。 TMOD是T0和T1的工作方式控制寄存器,TCON是T0和T1的运行状态控制寄存器。 TMOD和TCON由所编程序控制。 M1、M0:决定定时器的4种工作方式 方式0:(M1=0、M0=0):13位定时/计数器 方式1:(M1=0、M0=1):16位定时/计数器 方式2:(M1=1、M0=0):8位定时/计数器 方式3:(M1=1、M0=1):把T0分为两个8位计数器 C/T:定时/计数方式选择位 C/T=0为定时工作方式。此方式下,计数脉冲来自单片机内部。 C/T=1为计数工作方式。此方式下,计数脉冲来自外部引脚。 GATE:计数器工作方式控制位 GATE=0时,不受外部控制。 GATE=1时,T0和T1分别受P3.2和P3.3脚上电平控制。 定时器/计数器启动工作前,CPU先要为它设定其工作方式,然后再为它装入定时器/计数器初值,并通过指令启动其工作。 方式0下, 当为计数工作方式时,计数值的范围是: 1~8192(213) 当为定时工作方式时,定时时间的计算公式为: (213-计数初值)× 机器周期 其时间单位与机器周期相同(μs) 方式1下, 当为计数工作方式时,计数值的范围是 1~65536(216) 当为定时工作方式时,定时时间的计算公式为 (216-计数初值)× 机器周期 其时间单位与机器周期相同(μs) . 定时器/计数器的应用 初始化: ①确定TMOD控制字 编程时将控制字送TMOD; ②计算计数器的计数初值 编程时将计数初值送THi、 TLi; ③ 开中断(如果使用中断) 编程实置位EA、ETi ; ④ TRi位置位控制定时器的启动和停止。 1.定时时间常数的计算 定时时间t =(M-X)×Tosc 其中M可取值为213、216、28,Tosc为机器周期。 例如:单片机采用12M晶振,定时器工作在方式0,定时时间为5ms,那么TH0及TL0的设置如下: X=8192-5000/1=3192=C78H=110001111000 TL0取低5位,其余位为TH0,则TH0 =63H; TL0 =18H。 2.TMOD寄存器初始化 例如: 为把定时器/计数器0设定为方式0,M1M0=00; 为实现定时功能,则C/T =0; 定时器/计数器1不用. ,有关位设定为0 3.由控制寄存器TCON中的TR0/TR1位控制定时的启动和停止,=1启动,=0停止。 【习题1】 单片机时钟频率为12MHz,计算定时5ms所需的定时器初值。 分析:定时器工作在方式2和方式3下时的最大定时时间只有0.256ms,要获得5ms的定时时间,必须在方式0或方式1。 (1)方式0 【例1】利用单片机的定时器实现5ms的定时,软件延时1s,使发光二极管实现闪烁。 ORG 0000H AJMP MAIN ORG 000BH ;中断服务程序入口 AJMP IT0 ORG 0030H MAIN: MOV SP,#70H MOV TMOD,#00H ;令T0为方式0 MOV IE,#82H ;打开T0中断 MOV R2,#0C8H SETB P1.0 MOV TH0,#63H ;装入定时初值 MOV TL0,#18H SETB TR0 MOV R0,#14H LOOP:AJMP LOOP ;等待中断 IT0: CLR TR0 DJNZ R2,YAS1 ;若R2-1之后不为0,则转移 CPL P1.0 ;1s到,则翻转电平 MOV R2,#0C8H YAS1:MOV TH0,#63H ;重新启动定时器

文档评论(0)

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

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

1亿VIP精品文档

相关文档