单片机原理及应用第四章 汇编程序设计(中断服务子程序).pptVIP

单片机原理及应用第四章 汇编程序设计(中断服务子程序).ppt

  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文档。上传文档
查看更多
⑦中断返回(RETI,PC值出栈) ①中断源 ②中断申请 ③开放中断 ④保护现场(先自动将PC值压栈,再保存相关寄存器值) ⑤中断服务 ⑥恢复现场 (恢复相关寄存器值) 一、知识回顾 中断响应的几个环节: 中断系统硬件结构图 注:各中断允许控制位=0,开关断开; =1,开关接通 IE0 EX0 TF0 IE1 TF1 TI ES ET1 EX1 ET0 外部中断 请求0 外部中断 请求1 内部 定时器0 内部 定时器1 内部 串行口 T R RI IE寄存器 EA位 IP寄存器 各单路开关 总开关 中断源标志位查询机构 高中断级中断请求 低中断级中断请求 中断入口 中断源标志位 INT0 INT1 中断入口 中断源标志位 一、知识回顾 最高优先级 最低优先级 000BH TF0 定时/计数器0(T0) 002BH TF2 定时/计数器2(T2) 0023H RI/TI 串行口接收/发送 001BH TF1 定时/计数器1(T1) 0013H IE1 外部中断1(INT1) 0003H IE0 外部中断0(INT0) 中断优先级 中断矢量 申请标志 中 断 源 辅助优先级如下: 一、知识回顾 例1:在INT1引脚接一个按钮开关到地,每按一下按钮就申请一次中断,中断服务则是:依次点亮八盏灯中的一盏。 二、外部中断应用举例 P1.0 P1.7 INT1 300? ORG 0000H LJMP MAIN ORG 0013H ;中断矢量 LJMP INT ORG 1000H MAIN:SETB EA ;开总中断 SETB EX1 ;开外部中断1 SETB IT1 ;边沿触发 MOV B,#01H ;给 B 寄存器赋初值 HERE:SJMP HERE ;原地等待 ORG 1100H INT: MOV A,B ;自B寄存器中取数 RL A ;左环移一次 MOV B,A ;存回B,备下次取用 MOV P1,A ;输出到P1口 RETI ;中断返回 END 中断服 务程序 例2:假设晶振频率6MHz,要在P1.0上输出一个周期为2ms的方波信号。 三、定时器中断应用举例 Th:半周期 T:周期 分析: ① 机器周期:T=2us; ② 指令“DJNZ Rn,rel” 的执行时间:2T=4us; ③ 执行250次刚好1ms。 (1)采用软件延时方法实现 ORG 0000H AJMP MAIN ORG 0100H MAIN: MOV R7, #250 LOOP: DJNZ R7, LOOP CPL P1.0 AJMP MAIN END (2)采用硬件延时(定时器中断)方法实现 1.定时器应用程序的编写步骤 (1)确定时间常数 根据公式:t =(2n - x)·T,计算X值。 ① 对TMOD、TCON、 IP、IE进行设置; ② 将时间常数送入定时/计数器中。 (2)定时器和中断系统初始化(一般放在主程序中) 注意:重赋初值和中断标志位清零。 (3)中断服务程序设计 2.定时器方式0的应用 例2:假设晶振频率6MHz,要在P1.0上输出一个周期为2ms的方波信号。 (1)方法1:中断方式 ① 确定时间常数 T=2us 根据公式:t=(213 - x)·T 有: x = 7692 = 1E0CH =1111000001100B 所以初值应为: TH0 = 0F0H,TL0 = 0CH。 ② 初始化SFR (IP)=0 (IE)=82H (TMOD)=0 (TCON)=10H ORG 0000H RESET:AJMP MAIN ;转主程序 ORG 000BH AJMP ITOP ;转中断服务程序 ORG 0100H MAIN:ACALL PTOMO

您可能关注的文档

文档评论(0)

132****9295 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档