1 / 20

第 7 章 MCS-51 的中断控制系统

第 7 章 MCS-51 的中断控制系统. 7.1 中断的相关概念 7.2 MCS-51 中断系统结构 7.3 中断的处理过程 7.4 多外部中断源系统设计 7.5 中断系统的程序设计 与应用实例. 退出. 7.1 中断的相关概念 1. 中断:单片机执行主程序时,由于某个事件的原因,暂停主程序的执行,调用相应的程序处理该事件,处理完毕后再自动继续执行主程序的过程。.

Download Presentation

第 7 章 MCS-51 的中断控制系统

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第7章MCS-51的中断控制系统 7.1 中断的相关概念 7.2 MCS-51中断系统结构 7.3 中断的处理过程 7.4 多外部中断源系统设计 7.5 中断系统的程序设计 与应用实例 退出

  2. 7.1 中断的相关概念 • 1. 中断:单片机执行主程序时,由于某个事件的原因,暂停主程序的执行,调用相应的程序处理该事件,处理完毕后再自动继续执行主程序的过程。

  3. 2.中断的嵌套:执行一个中断时又被另一个事件打断,暂停该中断处理过程转去处理这个更重要的事件,处理完毕之后再继续处理本中断的过程,叫作中断的嵌套。2.中断的嵌套:执行一个中断时又被另一个事件打断,暂停该中断处理过程转去处理这个更重要的事件,处理完毕之后再继续处理本中断的过程,叫作中断的嵌套。 图7-2 中断嵌套过程

  4. 3.中断的优先级:不同事件的重要程度 4.中断源:可以引起中断的事件 5.中断服务程序:为了处理中断而编写的程序 中断向量:对应中断服务程序的入口地址被 称为中断向量。 6.中断请求:中断源对主程序或中断服务程序提出中断要求 中断响应:主程序或中断服务程序接受中断请求,去执行中断服务程序 中断返回:中断服务程序执行完毕后回到主程序或者次一级别中断服务程序 7.中断系统 :实现中断处理功能的软、硬件系统

  5. 7.2 MCS-51中断系统结构

  6. 5个中断请求源,2个中断优先级。 完成中断功能的特殊功能寄存器有:中断源寄存器TCON、SCON;中断允许控制寄存器IE;中断优先级控制寄存器IP。 7.2.1 中断请求源与中断源寄存器: 中断请求源: (P3.2、12引脚)、 (P3.313引脚)、 TF0、TF1、TI或RI。 中断源寄存器:TCON和SCON

  7. 定时器/计数器控制寄存器TCON: 锁存了外部中断源及其触发方式、定时器T0和T1溢出中断。TCON寄存器中的IE0、IT0、IE1、IT1。TCON中的位格式如下:

  8. IE0:为外部中断/INT0的请求标志位。当/INT0引脚上出现中断请求信号(低电平或脉冲下降沿)时,硬件自动将IE0置“1”,产生中断请求标志。IE0:为外部中断/INT0的请求标志位。当/INT0引脚上出现中断请求信号(低电平或脉冲下降沿)时,硬件自动将IE0置“1”,产生中断请求标志。 IT0:外部中断/INT0触发方式控制位。由软件来置“1”或清“0”,以控制外部中断/INT0的触发方式。当IT0=1 时,外部中断/INT0为下降沿触发。当IT0=0时,外部中断/INT0为电平触发。即外部中断/INT0出现低电平时,触发IE0,使其为“0”。 IE1:外部中断/INT1的请求标志位。功能与IE0相同。 IT1:外部中断/INT1触发方式控制。功能与IT0相同。

  9. 串行口控制寄存器SCON: TI:串行口内部发送中断请求标志位。当串行口发送完一个字符后,由内部硬件使发送中断标志TI置位。产生中断请求标志。 RI:串行口内部接收中断请求标志位。当串行口接收到一个字符后,由内部硬件使接收中断请求标志位RI置位。产生中断请求标志。

  10. 7.2.2 中断控制与中断控制寄存器IE、IP 中断允许寄存器IE:

  11. EX0:外部中断0允许位。EX0=1,允许外部中断0中断;EX0=0,禁止外部中断0中断。EX0:外部中断0允许位。EX0=1,允许外部中断0中断;EX0=0,禁止外部中断0中断。 ET0:T0溢出中断允许位。ET0=1,允许T0中断;ET0=0,禁止T0中断。 EX1:外部中断1允许位。EX1=1,允许外部中断1中断;EX1=0,禁止外部中断1中断。 ET1:T1溢出中断允许位。ET1=1,允许T1中断;ET1=0,禁止T1中断。 ES:串行中断允许位。ES=1,允许串行口中断;ES=0,禁止串行口中断。 EA:中断总允许位。EA=1,CPU开放中断;EA=0,CPU禁止所有的中断请求。总允许EA好比一个总开关。

  12. 中断优先级寄存器IP:

  13. PX0:外部中断0优先级控制位。PX1=1,外部中断0为高优先级;PX0=0,为低优先级。PX0:外部中断0优先级控制位。PX1=1,外部中断0为高优先级;PX0=0,为低优先级。 PT0:T0中断优先级控制位。PT0=1,定时器T0为高优先级;PT0=0,为低优先级。 PX1:外部中断1优先级控制位。PX1=1,外部中断1为高优先级;PX1=0,为低优先级。 PT1:T1中断优先级控制位。PT1=1,定时器T1为高优先级;PT1=0,为低优先级。 PS:串行口中断优先级控制位。PS=1,串行口为高优先级;PS=0,为低优先级。

  14. MCS-51单片机复位后,IP寄存器低5位全部被清0,将所有中断源设置为低优先级中断。MCS-51单片机复位后,IP寄存器低5位全部被清0,将所有中断源设置为低优先级中断。 同优先级时的优先级顺序如表所示。

  15. 7.3 中断的处理过程 1.响应:如果没有被下述条件所阻止,将在下一个机器周期的状态周期S1响应激活了的最高级中断请求。 (1)CPU正在处理相同的或更高优先级的中断。 (2)现行的机器周期不是所执行指令最后一个机器周期。 (3)正在执行的指令是RETI或是访问IE或IP的指令(CPU在执行RETI或访问IE、IP的指令后,至少需要再执行一条指令才会响应新的中断请求。 如果上述条件中有一个存在,CPU将丢弃中断查询的结果。

  16. CPU响应中断时,先置相应的优先级状态触发器(该触发器指出CPU开始处理的中断优先级别),然后执行一个硬件子程序调用,使控制转移到相应的入口,中断请求源申请标志清0(TI和RI除外),硬件把程序计数器PC的内容压入堆栈,把中断子程序(即中断服务程序)的入口地址(中断向量)送入程序计数器PC。CPU响应中断时,先置相应的优先级状态触发器(该触发器指出CPU开始处理的中断优先级别),然后执行一个硬件子程序调用,使控制转移到相应的入口,中断请求源申请标志清0(TI和RI除外),硬件把程序计数器PC的内容压入堆栈,把中断子程序(即中断服务程序)的入口地址(中断向量)送入程序计数器PC。

  17. 2.中断服务:中断服务程序由程序员编写,用于满足用户的特定需求。2.中断服务:中断服务程序由程序员编写,用于满足用户的特定需求。 3. 中断返回:RETI指令表示中断服务程序的结束,CPU执行该指令时,一方面把响应中断时所置位的优先级状态触发器清0,使得单片机可以继续响应别的中断请求;另—方面从栈顶弹出断点地址(两个字节)送到程序计数器PC,CPU从原来中断处继续执行被中断的程序。

  18. 需要注意的是:1.现场保护:INTPRO: PUSH PSW ;保护程序断点处的PSW PUSH A ;保护程序断点处的A …… ;中断服务程序POP A ;恢复程序断点处的A POP PSW ;恢复程序断点处的PSW RETI

  19. 2. 撤除该中断请求:(1) 定时/计数器中断请求撤销。单片机对定时/计数器的溢出中断进行响应后,硬件会自动将中断请求标志位TF0或TF1清0。用户无需采取其他措施。(2) 串行口中断请求撤销。单片机对串行口中断进行响应后,硬件不会自动将中断请求标志位TI或RI清0。需要用户使用软件方法,在中断服务程序中进行标志位的清0操作。如:CLR TI或CLR RI等清零指令。(3) 外部中断源中断请求撤销。对于边沿触发方式的外部中断请求,当单片机对中断请求进行响应后,硬件会自动将中断标志IE0或者IE1清0,同时外部中断信号产生跳沿后也就随之消失。

More Related