CH5-中断系统.ppt

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

第5章 MCS-51中断系统 5.1 中断的概念 5.2 中断的功能 5.3 MCS-51中断系统结构 5.4 MCS-51中断系统控制 5.5 MCS-51中断处理过程 5.6 中断的应用实例 5.7 外部中断扩展 本章小结 习题 5.1 中断的概念 中断是指计算机在执行某一程序的过程中, 由于计算机系统内、 外的某种原因, 而必须中止原程序的执行, 转去执行相应的处理程序, 待处理结束之后, 再回来继续执行被中止的原程序的过程。 中断源是指在计算机系统中向CPU发出中断请求的来源, 中断可以人为设定, 也可以是为响应突发性随机事件而设置。通常有I/O设备、实时控制系统中的随机参数和信息故障源等。 中断源可分为类:内部中断源和外部中断源。 单片机处理中断的4个步骤:中断请求、中断响应、中断处理和中断返回。 Tx=0(电平触发方式),CPU在每个机器周期的S5P2期间采样INTx引脚 若为低电平,则认为有中断申请,硬件自动使IEx置1; 若为高电平,认为无中断申请或已撤除,硬件自动使IEx清0。 CPU响应中断后IEx能由硬件或软件清0,但在中断返回前必须撤消INTx引脚上的低电平,否则将再次响应中断造成出错。 ITx=1(边沿触发方式),CPU在每个机器周期的S5P2期间采样 INTx引脚 若在连续两个机器周期采样到先高电平后低电平,则认为有中断申请,硬件自动使IEx置1,中断申请; CPU响应中断时,才由硬件自动清0。 在边沿触发方式下,为保证CPU在两个机器周期内检测到先高后低的负跳变,输入高低电平的持续时间至少要保持12个时钟周期。 例 2 单步操作的中断实现。 把一个外部中断(设为INT0)设置为电平激活方式。其中断服务程序的末尾写上如下几条指令:  JNB P3.2, $ ; 在INT0变高前原地等待(死循环) JB P3.2, $ ; 在 INT0变低前原地等待(死循环) RETI ; 返回并执行一条指令 在INT0端每出现一个正脉冲, 主程序就执行一条指令, 实现了单步执行的目的(正脉冲的高电平持续时间不小于 3个机器周期, 以确保CPU能采集到高电平值)。 外部中断1中断服务程序: ;15s未到继续循环 DJNZ R3,NEXT NEXT:LCALL DELAY ;15s延时的循环次数 DEL1:MOV R3,#30 ;A道红灯亮,B道绿灯亮 MOV P1,#0DEH ;B道无车,退出中断 AP0:JNB P3.1,EXIT ;转向15s延时程序 SJMP DEL1 ;A道绿灯亮,B道红灯亮 MOV P1,#0F3H ;A道无车,转向判断B道 JNB P3.0,AP0 ;开中断 SETB EA PUSH 06H PUSH 05H PUSH 04H ;保护现场 PUSH P1 ;关中断 INT1:CLR EA ORG 0300H 注释 程序 外部中断1中断服务程序: ;返回原程序 RETI SETB EA POP P1 POP 04H POP 05H ;恢复现场 POP 06H EXIT:CLR EA * * 5.2 中断的功能 中断系统是指能实现中断功能的硬件和软件。 中断系统的功能一般包括以下几个方面: 中断优先级排队 中断嵌套 中断响应 中断返回 中断的特点: 可以提高CPU的工作效率 实现实时处理 处理故障 (1) 中断优先级 优先级指 CPU对两个及以上中断源中断请求的响应次序。CPU首先响应高优先级的中断请求,等到处理完后,再响应优先级低的中断请求。 (2) 中断嵌套 中断嵌套指 CPU暂停正在执行的中断服务程序,转向执行更高优先级中断请求,等处理完后,再返回来继续执行被暂停的中断服务程序。 (3) 中断响应 中断源向CPU发出的中断请求是随机的。通常,CPU总是在每条指令的最后状态对中断请求信号进行检测,若确认有中断请求,CPU根据相关条件(如中断优先级、是否允许中断) 决定是否响应这个中断请求。 若允许响应,CPU在执行完相关指令后,会自动完成断点地址压入堆栈、中断矢量地址送入程序计数器PC、撤除本次中断请求标志,转入执行相应中断服务程序。 (4) 中断返回 CPU在执行中断服务程序最后的中断返回指令时,会自动弹出

您可能关注的文档

文档评论(0)

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

你好,我好,大家好!

版权声明书
用户编号:7140162041000002

1亿VIP精品文档

相关文档