单片机原理第6章定时器及应用.ppt

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 模式 0 的应用举例 例6-1:设定时器T0选择工作模式0,定时时间为1ms,fosc=6MHz。试确定T0初值,计算最大定时时间T。 * 模式 0 的应用举例 解:当T0处于工作模式0时,加1计数器为13位。 (1)试确定T0初值 设T0的初值位X。 则:(213-X)×1/6 × 10-6×12=1×10-3 s X=7692D =1 1110 0000 1100B T0的低5位:01100B=0CH即(TL0)=0CH T0的高8位=F0H即(TH0)=F0H (2)计算最大定时时间T T0的最大定时时间对应于13位计数器T0的各位全为1,即(TL0)=1FH,(TH0)=FFH. 则:T=213×1/6 × 10-6×12=16.384ms * 模式 1 的应用举例 用定时器T1产生一个50Hz的方波,由 P1.1输出,使用程序查询方式,fosc=6MHz。 * 模式 1 的应用举例 解: ∵方波周期T=1/50=0.02s =20ms ∴用T1定时10ms 计数初值X为: X=216-12×10×1000/12 =65536-10000=55536=D8F0H * 模式 1 的应用举例 源程序清单: MOV TMOD,#10H ;设置T1为模式1 SETB TR1 ;启动定时 LOOP: MOV TL1,#0D8H ;送初值 MOV TH1,#0F0H JNB TF1,$ ;查询定时时间到否 CLR TF1 ;产生溢出,清标志位 CPL P1.1 ;取反 SJMP LOOP ;重复循环 * 模式 2 的应用举例 当P3.4引脚上的电平发生负跳变时,从P1.0输出一个500μs的同步脉冲。请编程序实现该功能。查询方式,fosc=6MHz。 * 模式 2 的应用举例 解:(1)模式选择 选T0为模式2,外部事件计数方式。 当P3.4引脚上的电平发生负跳变时,T0计数器加1,溢出标志TF0置1;然后改变T0为500μs定时工作方式,并使P1.0输出由1变为0。T0定时到产生溢出,使P1.0输出恢复高电平,T0又恢复外部事件计数方式。 如图所示。 * 模式 2 的应用举例 (2)计算初值 T0工作在外部事件计数方式,当计数到28时,再加1计数器就会溢出。设计数初值为X,当再出现一次外部事件时,计数器溢出。 则: X+1=28 X= 28 -1=0FFH T0工作在定时工作方式,设晶振频率为6MHz,500μs相当于250个机器周期。因此,初值X为 (28-X)×2μs=500μs X=6=06H * 模式 2 的应用举例 (3)程序清单 START: MOV TMOD,#06H ;设置T0为模式2,外部计数方式 MOV TL0,#0FFH ;T0计数器初值 MOV TH0,#0FFH SETB TR0 ;启动T0计数 LOOP1:JBC TF0,PTFO1 ;查询T0溢出标志, ;TF0=1时转,且清TF0=0 SJMP LOOP1 ; * 模式 2 的应用举例 PTFO1:CLR TR0 ;停止计数 MOV TMOD,#02H ;设置T0为模式2,定时方式 MOV TL0,#06H ;送初值,定时500μs MOV TH0,#06H C

文档评论(0)

精品天地 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档