第5章单片微机定时器.ppt

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章单片微机定时器

第5章 定时器/计数器 及其应用 第6章 单片机的串行口 原理及应用 例5-8 要求当P3.4 (T0)引脚上的电平发生负跳变时,从P1.0输出一个500us的同步脉冲。 Proteus仿真电路如图5.9所示,将P1.0和P3.4引脚分别接到模拟示波器的A, B输入端,每次按下按钮时,可以看到P1.0输出的同步脉冲信号。 若单片机工作频率为6MHz, T0的定时初值应为: X=28-(500×10-6)/(2×10-6) =6 =06H 可以先将T0设置为方式2,外部计数方式,计数初值设为FFH,当P3.4引脚上的电平发生负跳变时,T0计数器加1,发生溢出使TF0标志置位;然后将T0改变为500us定时工作方式,并使P1.0输出由1变为0。当T0定时时间到,产生溢出,使P1.0恢复输出高电平,同时T0恢复外部计数工作方式。 ORG 0000H LJMP MAIN ORG 0030H MAIN:MOV TMOD,#06H MOV TH0,#0FFH MOV TL0,#0FFH SETS TR0 LOOP1: JBC TF0,PTF01 SJMP LOOP1 PTF01: CLR TR0 MOV TMOD,#02H MOV TH0,#06H MOV TL0,#06H CLR P1.0 SETB TR0 LOOP2: JBC TF0,PTF02 SJMP LOOP2 PTF02: SETB P1.0 CLR TR0 SJMP MAIN END ;复位地址 ;跳转到主程序 ;主程序入口地址 ;T0: 8位外部计数方式 ;写入T0计数初值 ;写入T0计数初值 ;启动T0计数 :查询T0溢出标志 ;停止计数 ;改变T0为8位定时方式 ;写入T0定时初值 ;P1.0输出低电平 ;启动T0定时500us ;查询T0溢出标志 ;P1.0输出高电平 ;停止计数 ** 第五章 8051单片机的定时器/计数器 在8051中,实现中断需要用软件对以下5个内容进行初始化设置: ⑴ 中断服务程序入口地址的设定。 ⑵ CPU开中断与关中断。 ⑶某一中断源中断请求的允许与禁止。 ⑷ 各中断源优先级别的设定。 ⑸对于外部中断请求,还需进行触发方式的设定。 中断服务程序的设计 中断程序一般包含中断控制程序和中断服务程序两部分。 中断控制程序即中断初始化程序,一般不独立编写,而是包含在主程序中,根据上述的5点通过编写几条指令来实现。 中断服务程序是一种为中断源的特定事态要求服务的独立程序段,以中断返回指令RETI结束。 编程如下: ORG 0000H SJMP MAIN ORG 0003H ; 外部中断/INT0中断矢量 LJMP INT0INT ORG 0013H ;外部中断/INT1中断矢量 LJMP INT1INT MAIN:MOV IP, ;设INT1为高优先级 SETB IT0 ;设INT0下降沿有效 MOV IE, ;允许INT0、INT1中断, … ;开放CPU中断 INT0INT : … ;中断服务程序 PUSH PSW ;保护现场 PUSH ACC …

文档评论(0)

wyjy + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档