微机原理课件第七章 中断系统.docVIP

  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文档。上传文档
查看更多
微机原理课件第七章 中断系统

第七章 中断系统 一、中断的概念 设20H存放按键次数,每按键一次,20H加1。也就是每次有中断,就要执行一条指令:INCB 20H 程序的执行过程:若无按键按下,程序一直处于显示过程,显示20H中的按键次数,一旦按键按下,产生中断,程序中断显示过程,执行一条指令(INCB 20H),然后再回到显示过程,显示20H中的新内容。 MAIN: LCALL INIT LOOP1: LCALL DISPLAY LJMP LOOP1 问题:INCB 20H放在什么位置? 解决方案:将INCB 20H放在单独的位置,将此指令的地址存入某固定地址(中断向量表:每种中断都有不同的地址),当中断产生时,将当前程序运行的PC指针的内容存入堆栈,然后CPU在某个固定地址中去寻找INCB 20H这条指令的存放地址,并将当前程序运行的PC指针的内容改成INCB 20H这条指令的存放地址,执行这条指令,指令执行完,通过RET指令,从堆栈中取出原来保存的程序中断前运行的地址,并根据此内容改变PC指针,使程序从中断处,继续运行。 程序清单: ORG 200EH DCW ANINT ORG 2080H MAIN: LCALL INIT LOOP1: LCALL DISPLAY LJMP LOOP1 INIT: ( ( ( RET DISPLAY: ( ( ( RET ANINT: INCB 20H RET 二、中断向量 在CPU的地址空间中特殊规定的存储空间,里面存放特定中断服务程序的首地址,不同种类的中断有独立的中断向量。一个中断向量占2个字节。由不同种类的中断向量组成的集合叫中断向量表。 三 8098的中断系统 中断源:共9种。软件中断、外中断、串行口中断、软件定时器中断、HSI.0中断、高速输出中断、高速输入数据有效中断、A/D转换完毕中断、定时器溢出中断。 2、中断优先级:当CPU同时有几个中断申请,CPU可根据不同种类的中断优先级,来判断先响应哪个中断。见书P71-表3.1 3、8098中断结构图:见书P70-图3.1 信号跳变检测器:8098所有中断源可分为两类,外部中断和内部中断。 外中断和HSI.0中断属于外部中断,其余都是内部中断。产生外部中断申请的条件:在外部中断的输入引脚上产生上升沿时,就产生一个外部中断申请。对于内部中断,当特定的中断条件满足后,由CPU的硬件电路产生相应的上升沿,以便产生相应的内部中断。 中断登记寄存器(INT_PENDING)(相应的位置1,当CPU相应中断 后,中断登记寄存器相应的位置 清零。 C、中断屏蔽寄存器(INT_MASK) (08H): 中断屏蔽寄存器属于PSW的低八位 中断屏蔽寄存器的功能:可以独立 的控制哪些中断申请可以被CPU 响应,而哪些中断申请不能被中断 响应。当中断屏蔽寄存器的某位 置一,中断申请可能CPU 响应。当中断屏蔽寄存器的某位 清零,即使有中断申请,CPU也 不会响应。 D、PSW.9:中断总控制位,EI、DI。PSW.9=0,CPU不响应任何中断,PSW.9=1,CPU 响应在中断屏蔽寄存器开放的中断申请。 E、优先级编码器:当中断登记寄存器有多个中断申请,且中断屏蔽寄存器相应位是1,这时根据不同中断的优先级来确定响应哪个中断。 四 中断的响应条件 1、PSW.9=1 2、INT_MASK的相应位置一 3、INT_PENDING的相应位置一 4、中断优先级高于同时申请的其他中断。 五 中断的响应过程 当CPU响应某个中断,把INT_PENDING中的相应位清零,将当前的PC值压入堆栈,然后CPU根据中断向量表提供的地址,完成一次硬件调用,转到相应的中断服务程序运行,当中断服务程序运行完,由RET指令完成从堆栈中恢复中断时主程序的PC值, 使主程序从中断处接着运行。 六 中断服务程序的数据保护 例1:主程序片断: LD AX,#01H LD BX,#03H 在此处中断 ADD AX,BX ( ( ( 中断服务程序: ( ( ( LD AX,#08H LD BX,#02H RET 改: 主程序片断: LD AX,#01H LD BX,#03H 在此处中断 ADD AX,BX ( ( ( 中断服务程序: PUSH AX PUSH BX ( ( LD AX,#08H LD

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档