- 1、本文档共43页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机课件 第4章:中断系统
天津科技大学机械工程学院 第4章 MCS51单片机中断系统 4.1 中断概述 4.2 MCS51中断系统 4.3 中断系统的应用 第4章 51单片机中断系统 4.1 中 断 的 概 述 1. 中断 中断是指计算机在执行某一程序的过程中, 由于计算机系统内、 外的某种原因, 而必须中止原程序的执行, 转去执行相应的处理程序, 待处理结束之后, 再回来继续执行被中止的原程序的过程。 采用了中断技术后的计算机, 可以解决CPU与外设之间速度匹配的问题, 使计算机可以及时处理系统中许多随机的参数和信息, 同时, 它也提高了计算机处理故障与应变的能力。 “中断”与“查询”相比: 执行效率↑ 实时性 ↑ 第4章 51单片机中断系统 2. 中断源 中断源是指在计算机系统中可以向CPU发出中断请求的来源。 通常有I/O设备、实时控制系统中的随机参数和信息故障源等。 3. 中断优先级 中断优先级越高, 则响应优先权就越高。当CPU正在执行中断服务程序时, 又有中断优先级更高的中断申请产生, 这时CPU就会暂停当前的中断服务转而处理高级中断申请, 待高级中断处理程序完毕再返回原中断程序断点处继续执行, 这一过程称为“中断嵌套”。 第4章 51单片机中断系统 4. 中断响应的一般过程 (1) 在每条指令结束后, 系统都自动检测中断请求信号, 如果有中断请求,且CPU处于开中断状态下, 则响应中断。 (2) 保护现场, 在保护现场前, 一般要关中断, 以防止现场被破坏。保护现场一般是用堆栈指令将原程序中用到的寄存器推入堆栈。 (3) 中断服务, 即为相应的中断源服务。 (4) 恢复现场, 用堆栈指令将保护在堆栈中的数据弹出来, 在恢复现场前要关中断, 以防止现场被破坏。在恢复现场后应及时开中断。 (5) 返回, 此时 CPU将推入到堆栈的断点地址弹回到程序计数器, 从而使CPU继续执行刚才被中断的程序。 第4章 51单片机中断系统 4.2 MCS - 51中断系统 4.2.1 中断源 表 4.1 8051 中 断 源 第4章 51单片机中断系统 图4―2 MCS-51的中断系统 4.2.2 中断控制寄存器 1. 中断允许控制寄存器 MCS - 51单片机有 5个(8052有 6个)中断源, 为了使每个中断源都能独立地被允许或禁止, 以便用户能灵活使用, CPU内部在每个中断信号的通道中设置了一个中断允许触发器, 它控制CPU能否响应中断。只有对应的中断允许触发器被使能(置“1”),相应的中断才能得到相应。 第4章 51单片机中断系统 EX0:外部中断0允许位 ET0:定时器/计数器0中断允许位 EX1:外部中断1允许位 ET1:定时器/计数器1中断允许位 ES : 串行口中断允许位 EA :中断总允许位 EX0 ET0 EX1 ET1 ES - - EA (MSB) (LSB) 1. 中断允许控制寄存器IE (0A8H) 第4章 51单片机中断系统 2. 中断优先级控制寄存器IP(0B8H) PX0 PT0 PX1 PT1 PS - - - (MSB) (LSB) PX0:外部中断0允许位 PT0:定时器/计数器0中断允许位 PX1:外部中断1允许位 PT1:定时器/计数器1中断允许位 PS : 串行口中断允许位 当两个以上的中断源同时提出申请时,CPU到底相应哪个中断呢? 中断响应遵循两条规则: (1)低优先级中断可以被高优先级中断所中断,反之不能; (2)一种中断(不论哪个优先级)一旦得到响应,与它同级的中断不能 再中断它。 第4章 51单片机中断系统 表 4.2 同级内第二优先级次序 当同时收到处于同一优先级的多个中断请求时,哪一个中断能得到响应,取决于“内部查询次序”,相当于在每个优先级中,还有一个“内部优先级”,如下表所示: 第4章 51单片机中断系统 例如, 某软件中对寄存器IE、 IP设置如下: MOV IE, # 8FH MOV IP, # 06H 则此时该系统中: · CPU中断允许; · 允许外部中断 0、 外部中断 1、 定时器 /计数器 0、 定时器 /计数器1提出的中断申请; · 允许中断源的中断优先次序为: 定时器 /计数器
文档评论(0)