单片机原理 高职 计算机1第5章 中断系统

上传人:E**** 文档编号:89108498 上传时间:2019-05-18 格式:PPTX 页数:22 大小:299.26KB
返回 下载 相关 举报
单片机原理 高职 计算机1第5章  中断系统_第1页
第1页 / 共22页
单片机原理 高职 计算机1第5章  中断系统_第2页
第2页 / 共22页
单片机原理 高职 计算机1第5章  中断系统_第3页
第3页 / 共22页
单片机原理 高职 计算机1第5章  中断系统_第4页
第4页 / 共22页
单片机原理 高职 计算机1第5章  中断系统_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《单片机原理 高职 计算机1第5章 中断系统》由会员分享,可在线阅读,更多相关《单片机原理 高职 计算机1第5章 中断系统(22页珍藏版)》请在金锄头文库上搜索。

1、第五章 中断系统,5.1 概述,计算机与外界的联系是通过外部设备(也称为外设、输入/输出设备或I/O设备)与外界联系的。计算机与外设之间不是直接相连的,而是通过不同的接口电路来达到彼此间的信息传送目的。 计算机与外设之间交换信息的方式: (1)无条件传送方式:外设对计算机来说总是准备好的。 (2)查询传送方式:传送前计算机先查询外设的状态,若已经准备好就传送,否则就继续查询/等待。 (3)中断传送方式:外设通过申请中断的方式与计算机进行数据传送。 (4)直接存储器存取方式(DMA):传送数据的双方直接通过总线传送数据, 不经CPU控制。,5.1 概述,一、中断概念 CPU正在执行主程序时,单片

2、机外部或内部发生的某一事件(如外部设备产生的一个电平的变化,一个脉冲沿的发生或内部计数器的计数溢出等)请求CPU迅速去处理,于是,CPU暂时中止当前的工作,转到中断服务处理程序处理所发生的事件。中断服务处理程序处理完该事件后,再回到原来被中止的地方,继续原来的工作(例如,继续执行被中断的主程序),这称为中断。,日常生活中的中断与单片机中断的比较:,5.1 概述,中断源 中断申请 开放中断 保护现场 中断服务 恢复现场 中断返回,(前面提到的电话) (电话发出信号提出申请) (乙方同意传送) (安排好当前的工作) (响应乙方的要求) (完事后,回去) (继续做打断前的工作),5.1 概述,二、中

3、断源 向CPU提出中断请求的事件或器件就是中断源,中断源是中断控制的起点,中断源向CPU提出的“中断请求”通常是一种电信号。根据需要的不同,一个单片机系统通常有若干个中断源。这些中断源有的来自单片机内部,有的来自单片机外部。,5.1 概述,三、中断嵌套 1. 优先级 当多个中断源同时向CPU请求中断时,就出现了CPU应该先响应哪个中断请求的问题。单片机往往根据中断源引发事件的轻重缓急为其设置不同的优先级。优先级是单片机对中断源响应次序的规定,优先级高的中断请求先响应,优先级低的中断请求后响应。 2. 中断的嵌套 在某一瞬间,CPU因响应某一中断源的中断请求而正在执行它的中断服务程序时,若又有一

4、级别高的中断源向CPU发出中断请求,且CPU的中断是开放的,CPU可以把正在执行的中断服务程序暂停下来,转而响应和处理优先权更高的中断源的中断请求,等处理完后再转回来,继续执行原来的中断服务程序,这就是中断嵌套。中断嵌套示意图如图5-2。 中断嵌套的过程和子程序嵌套过程类似,子程序的返回指令是RET,而中断服务程序的返回指令是RETI。,5.1 概述,5.2 MCS-51系列单片机的中断系统,一、中断源和中断标志 MCS-51单片机提供了5个中断源,2个中断优先级控制,可实现2个中断服务嵌套。可通过程序设置中断的允许或屏蔽,设置中断的优先级。 1. 中断源 MCS-51单片机有5个中断源: (

5、1)外部中断源(中断标志为IE0和IE1) 由 ( P3.2 )端口线引入,低电平或下降沿引 由 ( P3.3 )端口线引入,低电平或下降沿引起。 (2)内部中断源 (中断标志为TF0、TF1和TI/RI) T0:定时/计数器0中断,由T0回零溢出引起。 T1:定时/计数器1中断,由T1回零溢出引起。 TI/RI:串行I/O中断,完成一帧字符发送/接收引起。,2. 中断控制 MCS-51单片机设置了4个专用寄存器用于中断控制,用户通过设置其状态来管理中断系统。这4个寄存器是:TCON、SCON、IE和IP寄存器。 MCS-51单片机为每个中断源设置了中断请求标志位。检测到中断请求信号后,先将相

6、应的中断标志位置位,以便在后续的周期里进行下一步的控制和处理。这些中断请求标志位集中锁存在专用寄存器TCON、SCON中。 CPU识别中断申请的依据:CPU在每个机器周期的S5P2期间,会自动查询各个中断申请标志位,若查到某标志位被置位,将启动中断机制。 MSC-51单片机中断系统通过中断允许控制寄存器IE实现开中断和关中断的功能。 MCS-51系列单片机的每个中断源具有高低两个中断优先级,可以实现两级中断嵌套。由中断优先级寄存器IP来锁存各个中断源的优先级状态。,5.2 MCS-51系列单片机的中断系统,(1)定时控制寄存器TCON (88H) TF0:定时器/计数器T0的溢出中断申请标志位

7、,当T0定时(计数)结束时,由硬件自动置1。 TF1:定时器/计数器T1的溢出中断申请标志位,当T1定时(计数)结束时,由硬件自动置1。 TR0:定时器/计数器T0的启动停止控制位,由软件设定。TR0=0:停止定时器/计数器T0运行;TR0=1:启动定时器/计数器T0运行。 TR1:定时器/计数器T1的启动停止控制位,由软件设定。TR1=0:停止定时器/计数器T1运行;TR1=1:启动定时器/计数器T1运行。,5.2 MCS-51系列单片机的中断系统,IE0:外部中断0的中断请求标志位,当在 引脚得到有效的外部中断请求信号时,由硬件自动置1。 IE1:外部中断1的中断请求标志位,当在 引脚得到

8、有效的外部中断请求信号时,由硬件自动置1。 IT0:外部中断0触发方式控制位,由软件进行设定。IT0=0,外部中断0为电平方式触发;IT0=1,外部中断0为脉冲方式触发。 IT1:外部中断1触发方式控制位,由软件进行设定。IT1=0,外部中断1为电平方式触发;IT1=1,外部中断1为脉冲方式触发。,5.2 MCS-51系列单片机的中断系统,(2)串行口控制寄存器SCON (98H) TI:串行口发送结束中断标志位,当串行口结束一次数据发送后,由硬件自动置1。 RI:串行口接收结束中断标志位,当串行口结束一次数据接收后,由硬件自动置1。 SCON的高6位用于串行口工作方式设置和串行口发送/接收控

9、制。,5.2 MCS-51系列单片机的中断系统,(3)中断允许控制寄存器IE (0A8H) EA:总的中断允许控制位(总开关),其状态由用户通过程序进行控制。EA=0,中断总禁止,即关中断;EA=1,中断总允许,即开中断,此时由各中断源的中断允许控制位决定各中断源的中断允许或禁止。 EX0:外部中断0的中断允许控制位。中断总允许时,EX0=0,禁止外部中断0中断;EX0=1,允许外部中断0中断。 ET0:定时器T0的中断允许控制位。中断总允许时,ET0=0,禁止T0中断;ET0=1,允许T0中断。 EX1:外部中断1的中断允许控制位。中断总允许时,EX1=0,禁止外部中断1中断;EX1=1,允

10、许外部中断1中断。 ET1:定时器T1的中断允许控制位。中断总允许时,ET1=0,禁止T1中断;ET1=1,允许T1中断。 ES:串行中断的中断允许控制位。中断总允许时,ES=0,禁止串行口中断;ES=1,允许串行口中断。,5.2 MCS-51系列单片机的中断系统,(4)中断优先级控制寄存器IP (0B8H) 8051有两个中断优先级,即高优先级和低优先级,每个中断源都可设置为高或低中断优先级,以便CPU对所有的中断实现两级中断嵌套。 8051内部中断系统对各中断源的中断优先级有一个统一的规定,称为自然优先级(也称为系统缺省优先级)。如表5-1所示。,表5-1各中断源及其自然优先级,5.2 M

11、CS-51系列单片机的中断系统,8051单片机的中断优先级采用了自然优先级和人工设置高、低优先级的策略,中断处于同一级别时,就由自然优先级确定。开机时,每个中断都处于低优先级,中断优先级可以通过程序来设定,由中断优先级寄存器IP来统一管理。 PX0:外部中断0的中断优先级控制位。PX0=0,外部中断0为低中断优先级;PX0=1,外部中断0为高中断优先级。 PT0:定时器TO的中断优先级控制位。PT0=0,T0为低中断优先级;PT0=1,T0为高中断优先级。 PX1:外部中断1的中断优先级控制位。PX1=0,外部中断1为低中断优先级;PX1=1,外部中断1为高中断优先级。 PT1:定时器T1的中

12、断优先级控制位。PT1=0,T1为低中断优先级;PT1=1,T1为高中断优先级。 PS:串行口中断优先级控制位。PS=0,串行中断为低中断优先级;PS=1,串行中断为高中断优先级。,5.2 MCS-51系列单片机的中断系统,二、中断处理过程 中断处理过程包括中断请求、中断响应、中断服务和中断返回。 1. 中断请求 只有在有请求时,CPU才可能响应中断源,不同的中断源产生中断请求的方式是不同的。外部中断产生请求是在外部中断的引脚上加低电平或脉冲下降沿信号,而定时器/计数器中断请求是在内部的计数单元计满溢出时产生,串行中断请求是在完成一次发送或接收时产生。 2. 中断响应 (1)中断响应条件 CP

13、U响应中断的基本条件如下: 1)有中断源发出中断请求; 2)中断总允许位EA=1(IE寄存器最高位),即CPU允许所有中断源申请中断; 3)申请中断的中断源的中断允许位为1,即此中断源可以向CPU申请中断。 如果有下列任何一种情况存在,则中断响应就会受到阻断。 1)CPU正在执行一个同级或更高级的中断服务程序; 2)正在执行的指令还没有完成; 3) 正在执行的指令是返回指令(RETI)或者对专用寄存器IE、IP进行读/写的指令,此时,在执行RETI或者读/写IE或IP之后,不会马上响应中断请求。至少要执行一条其它指令,才能响应中断。,5.2 MCS-51系列单片机的中断系统,(2)中断响应过程

14、 内部中断源的中断请求发生在单片机内部,在中断请求后可以直接完成对相应中断请求标志的置1操作。对外部中断源,则需要首先采样外部中断信号引脚,再将有效的外部中断请求信号锁存在对应的中断请求标志位中。 在每个机器周期中,CPU以IE、IP和自然优先级为依据查询中断请求标志,并完成对有效中断请求的排队。如果不存在有效的中断请求,则在下一个机器周期继续查询;如果存在有效的中断请求,则从下一个机器周期开始对最高优先级的中断请求进行处理。,5.2 MCS-51系列单片机的中断系统,3. 中断服务 中断服务,就是完成中断源请求的任务。这需要编程者用指令实现。也就是说需要编写相应的中断服务程序,完成中断源请求

15、的任务。MCS-51系列单片机在内部的ROM中为五个中断源定义了固定的中断服务区,见表 CPU响应中断请求后,按照中断源的不同,自动转到各中断服务区的首地址去执行程序。中断服务区的首地址也称中断入口地址,是中断控制的要点。但8个字节的中断服务区难以存下一般的中断服务程序,解决办法是在中断服务区的入口地址存放一条无条件转移指令,将流程转入中断服务程序的真正入口。,5.2 MCS-51系列单片机的中断系统,4. 中断返回 中断服务完成任务后,要返回原来被打断的程序继续执行。中断返回和子程序的返回类似,需要执行一条返回指令RETI。 中断返回时完成以下操作: (1)恢复断点地址。 (2)开放同级中断

16、 注意 RETI不是RET,不可混淆。 5. 中断请求标志的撤除 CPU响应中断请求后即进入中断服务程序,在中断返回前,应撤除该中断请求,否则,会重复引起中断而导致错误。MCS-51各中断源中断请求撤销的方法各不相同,分别为:,5.2 MCS-51系列单片机的中断系统,1)定时/计数器中断请求的撤除 对于定时/计数器0或1溢出中断,CPU在响应中断后即由硬件自动清除其中断标志位TF0或TF1,无需采取其它措施。 2)串行口中断请求的撤除 对于串行口中断,CPU在响应中断后,硬件不能自动清除中断请求标志位TI、RI,必须在中断服务程序中用软件将其清除。 3)外部中断请求的撤除 外部中断可分为边沿触发型和电平触发型。对于边沿触发的外部中断0或1,CPU在响应中断后由硬件自动清除其中断标志位IE0或IE1。对于电平触发的外部中断,其中断请求撤除方法比较复杂。在CPU响应中断后应立即撤除引脚上的低电平,否则,就会引起重复中断而导致错误。而CPU又不能控制引脚的信号,因此,只有通过硬件再配合软件才能解决这个问题。,5.2 MCS-51系列单片机的中断系统,5.3 中断程

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号