单片机的中断系统简介.ppt

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

PT0,定时器/计数器T0的中断优先级控制位。其功能 同PT1。 PX0,外部中断0(INT0)的优先级控制位。其功能 同PX1。 中断优先级控制寄存器IP的各位都由用户置位或复 位,可用位操作指令或字节操作指令更新IP的内容,以改 变各中断源的中断优先级,单片机复位后IP全为0,各个 中断源均为低优先级中断。 4.3 中断响应过程 单片机的中断的处理过程可分为中断响应、中断处理和中断返回3个阶段。下面介绍8051单片机的中断处理过程。 一、中断的响应条件 在每个机器周期的S5P2时刻,单片机依次采样每一个中断标志位,而在下一个机器周期对采样到的中断进行查询。如果在前一个机器周期的S5P2有 中断标志,则在查询周期内便会查询到并按优先级高低进行 中断处理,中断系统将控制程序转入相应的中断服务程序。 CPU响应中断应具备的条件是:首先有中断源发出中断请 求;然后CPU中断允许位EA为“1”,即CPU开中断,并且申 请中断的中断源,其相应的中断允许位为“1”,即允许相 应的中断源中断。条件满足时,一般CPU会响应中断请求。 CPU响应中断时,会根据中断源的类别,在硬件的控制下,程序转向相应的中断服务程序入口单元,执行中断服务程序。 二、中断的响应过程 51单片机的中断系统中分为两个中断优先级。每一中断请 求源均可通过对IP寄存器的编程为高优先级中断或低优先 级中断,并可实现多级中断嵌套。一个正在执行的低优先 应新的中断请求。为了实现上述功能, 51单片机的中断 系统中有两个不可寻址的优先级状态触发器。一个指出某 高优先级的中断正在得到服务,所有后来的中断请求被阻 级中断服务程序能被高优先级的中断请求所中断,但不能 被另一个同级或低级的中断源所中断。因此,如果CPU正 在执行高优先级的中断服务程序,则不能被任何中断源所 中断,必须等到当前的中断服务程序执行结束,遇到返回 指令(RETI)返回主程序后,至少再执行一条指令才能响 应新的中断请求。为了实现上述功能, 51单片机的中断 系统中有两个不可寻址的优先级状态触发器。一个指出某 高优先级的中断正在得到服务,所有后来的中断请求被阻 断;另一个触发器指出某低优先级的中断正在得到服务, 所有同级的中断请求都被阻断,但不能阻断高优先级的中 断请求。 如果8051单片机满足中断响应的条件,并且不存在 中断被屏蔽的情况,CPU就响应相应的中断请求。在实际 的 响应过程中,CPU首先置位被响应中断的优先级状态触发器,以屏蔽(即关闭)同级和低级的中断请求。然后,根据中断源的类别,在硬件的控制下,内部自动执行一条子程序调用指令,将程序转移至相应的中断入口处,开始执行中断服务程序。在转入中断服务程序时,子程序调用指令自动把断点地址(即程序计数器PC的当前值)压入堆栈,但不会自动保存状态寄存器PSW等寄存器中的内容。 当中断的各项条件满足要求时,CPU响应中断,停止现行程 序,转向中断服务程序。整个响应过程中CPU应完成工作有: 1)关中断。CPU响应中断时便向外设发出中断响应 信号,同时自动地关中断,处理一个中断过程中不致又接 收另一新的中断,以防止误响应。 2)保护断点。为了保证CPU在执行完中断服务程序 后,准确地返回断点,CPU将断点处的PC值推入堆栈保 护。待中断服务程序执行完后,由返回指令RETI将其从堆 栈中弹回PC,从而实现程序的返回。 3)执行中断服务程序。找出中断服务程序入口地址,转入执行中断服务程序。在中断服务程序中一般应完成如下任务: (1)保护现场。由于CPU响应中断是随机的,而CPU中各寄存器的内容和状态标志会因转至中断服务程序而受到破坏,所以要在中断服务程序的开始,把断点处有关的各个寄存器的内容和状态标志,用堆栈操作指令PUSH推入堆栈保护。 (2)中断服务。中断源申请中断时应完成的任务。 (3)恢复现场。在中断服务程序完成后,把保护在堆 栈中的各寄存器内容和状态标志,用POP指令弹回CPU。 (4)开中断。上面已谈到CPU在响应中断时自动关中 断。为了使CPU能响应新的中断请求,在中断服务程序末 尾应按排开中断指令。 (5)返回主程序。当中断服务程序执行完毕返回主程 序时,必须将断点地址弹回PC,因此在中断服务程序的最 后用一条RETI指令,使PC返回断点。 因系统保留的各中断入口地址间空间太小,所以,通常在中断入口地址处安排一条相应的跳转指令,跳转至用户设计的中断服务程序入口。 三、中断处理 CPU响应中断请求后,即转到中断服务程序的入口,执行中断服务程

文档评论(0)

宝贝计划 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档