第6章51单片机的中断系统主要内容★中断的基本概念★中断的系统结构★中断的响应过程★中断的的应用编程第6章51单片机的中断系统在CPU和外设交换信息时,存在着快速CPU和慢速外设间的矛盾,机器内部有时也可能出现突发事件,为此,计算机中通常采用中断技术。中断CPU和外设并行工作,当外设数据准备好(或有某种突发事件发生)时向CPU提出请求,CPU暂停正在执行的程序转而为该外设服务(或处理紧急事件),处理完毕再回到原断点继续执行原程序。第6章51单片机的中断系统在CPU和外设交换信息时,存在着快速CPU中断源引起中断的原因,中断申请的来源,中断源可以是I/O设备、故障、时钟、调试中人为设置。中断优先级当有多个中断源同时向CPU申请中断时,CPU优先响应最需紧急处理的中断请求,处理完毕再响应优先级别较低的,这种预先安排的响应次序。第6章51单片机的中断系统中断的嵌套在中断系统中,高优先级的中断请求能中断正在进行的较低级的中断源处理。中断系统能实现中断功能并能对中断进行管理的硬件和软件称为中断系统。本章将讨论MCS51系列单片机的中断系统。第6章51单片机的中断系统中断请求是在执行程序的过程中的随机发生的,中断系统要解决的问题是:1)CPU在不断的执行指令中,是如何检测到随机发生的中断请求?2)如何使中断的双方(CPU方和中断源方)均能人为控制,允许中断或禁止中断。第6章51单片机的中断系统3)由于中断产生的随机性,不可能在程序中安排调子程序指令或转移指令,那么如何实现正确的转移,以便为该中断源服务呢?4)中断源有多个,而CPU只有一个,当有多个中断源同时有中断请求时,用户怎么控制CPU按照自己的需要安排响应次序?5)中断服务完毕,如何正确地返回到原断点处?第6章51单片机的中断系统6.1中断系统结构8XX51有5个中断源,3个在片内,2个在片外,它们在程序存贮器中有固定的中断入口地址,当CPU响应中断时,硬件自动形成这些地址,由此进入中断服务程序;5个中断源有两级中断优先级,可形成中断嵌套。第6章51单片机的中断系统6.1中断系统结构8XX51有5个中断源,其符号、名称、产生条件及中断服务程序的入口地址如表6.1。第6章51单片机的中断系统二、中断控制的有关寄存器(1)中断的允许和禁止——中断控制寄存器IEIE寄存器的各位对应相应的中断源,如果允许该中断源中断则该位置1,禁止中断则该位0。EA-ET2ESET1EX1ET0EX0中断总控允/禁不用T2允/禁串行口允/禁T1允/禁INT1允/禁T0允/禁INT0允/禁第6章51单片机的中断系统EA:中断总控开关,是CPU是否响应中断的前提。EA=1,CPU开中断;EA=0,CPU关中断。ES:串行口中断允许位,ES=1,允许串行口发送/接收中断;ES=0,禁止串行口中断。ET1:定时器T1中断允许位,ET1=1,允许T1计数溢出中断;ET1=0,禁止T1中断。第6章51单片机的中断系统ET0:定时器T0中断允许位,ET0=1,允许T1计数溢出中断;ET0=0,禁止T0中断。EX1:外部中断INT1允许位,EX1=1,允许INT1中断;EX1=0,禁止INT1中断。EX0:外部中断INT0允许位,EX0=1,允许INT0中断;EX0=0,禁止INT0中断。第6章51单片机的中断系统(2)中断请求标志及外部中断方式选择寄存器TCON第6章51单片机的中断系统说明:1.IT0和IT1为外中断INT0和INT1中断触发方式选择,若选下降沿触发则相应位置1;若选低电平触发,IT相应位置0。2.某中断源有中断请求,该中断标志置1,无中断请求,该中断标志置03.TR0和TR1为定时器T0和T1工作启动和停止控制。第6章51单片机的中断系统(3)中断优先级管理寄存器IP五个中断源的优先级别由IP寄存器管理,相应位置1,则该中断源优先级别高,置0的优先级别低。--------PT2PSPT1PX1PT0PX0无用位无用位T2高/低串行口高/低T1高/低INT1高/低T0高/低INT0高/低第6章51单片机的中断系统T0T1串行口当某几个中断源在IP寄存器相应位同为1或同为零时,由内部查询确定优先级,查询的顺序是:CPU优先响应先查询的中断请求T2INT0INT1第6章51单片机的中断系统MCS_51系列单片机的中断结构INT0PX0IE0PT0TF0PX1IE1PT1TF1PS1010101010TIRITCONIEIPEX0ET0EX1ET1ESEAIT1=0IT1=1T0T2TXRX自然优先级矢量地址高级中断请求低级中断请求源允...