1. 首页
  2. 文档大全

第4章中断系统 (2)

上传者:2****5 2022-06-30 00:50:51上传 PPT文件 1.29MB
第4章中断系统 (2)_第1页 第4章中断系统 (2)_第2页 第4章中断系统 (2)_第3页

《第4章中断系统 (2)》由会员分享,可在线阅读,更多相关《第4章中断系统 (2)(59页珍藏版)》请在文档大全上搜索。

1、第四章第四章 中断系统中断系统 中断的基本概念 中断系统是单片机的重要组成部分。检测、实时控制、故障自动处理往往采用中断系统,单片机与外围设备间传送数据及实现人机联系也常采用中断方式。中断系统的应用使计算机的功能更强,效率更高,使用更加灵活方便。 一、什么是中断二、中断的基本术语三、中断服务程序和子程序的区别四、中断技术的优势五、 任务4:信号灯的控制4一、什么是中断一、什么是中断 由于某个原因,使当前正在进行的工作暂时停止(打断一下),而去执行和本工作无关或者是有关的另外一个工作,在处理完这些工作后,还能回到原来的地方继续以前的工作。 如果将这个情况推广到计算机中,就是计算机的中断技术。在计

2、算机中,中断就是在执行某一段程序的过程中,由于某种原因,要求CPU尽快中止原程序的执行,而去执行相应的处理程序,待处理结束后,再回来执行被中止的程序。二、中断的基本术语二、中断的基本术语 1)、主程序:就是计算机中断前所执行的程序 2)、中断源:引起中断的原因、事件,就是能够发出中断申请的来源。 3)、中断服务程序:中断后所执行的程序; 4)、断点;主程序被断开的位置(或地址)。 5)、中断请求信号:光有中断源还不行,计算机是如何知道中断源有要求呢?这就需要中断源要有一个要求服务的请求信号,称为中断请求信号。6)、中断的优先级 凡事都可能有轻重缓急,一般是尽量先做重要或很急的事情。引起CPU中

3、止当前正在执行的程序的事情有可能也不止一个,每个中断源都有自己的“份量”,有的请求比较迫切,CPU必须尽快响应,而有的则可以等一会,这里也有优先级的问题。如果在执行级别比较低的中断服务程序的时候,忽然来了一个高级中断,计算机也会停止执行低级的中断服务程序,去为这个高级的中断服务。这就是所谓的“中断嵌套中断嵌套”,类似于子程序嵌套。 中断源中断源 中断申请中断申请开放中断开放中断保护现场保护现场中断服务中断服务恢复现场恢复现场中断返回中断返回中断涉及的几个环节(提出中断申请的(提出中断申请的甲方甲方)(甲方甲方发出信号提出申请)发出信号提出申请)(乙方乙方同意传送)同意传送)(安排好当前的工作)

4、(安排好当前的工作)(乙方乙方按预案响应)按预案响应)(预案完事后,回去(预案完事后,回去)(乙方乙方继续做打断前的工作)继续做打断前的工作)三、中断服务程序和子程序的区别三、中断服务程序和子程序的区别 中断大概的处理过程:中断大概的处理过程: 1、保护断点:当有事件产生,如果计算机要对它进行处理,在处理之前首先要保存下一条将要执行的指令的PC地址,也就是断点地址,并将这个地址送入堆栈。 2、根据事件的不同执行相应的中断服务程序。 3、中断返回:执行完中断指令后,就返回到主程序的断点处,继续执行。 和调用子程序相比,它们都要进行断点保护。响应中断或是执行子程序之前都会把断点压入堆栈中,返回的时

5、候将断点地址返回给程序计数器PC。 中断类似于程序设计中的调用子程序,但有所区别。中断类似于程序设计中的调用子程序,但有所区别。 中断产生是随机的,而调用子程序是事先预定好的。而调用子程序的情况就不一样了,子程序是程序中由用户事先安排好的,何时调用、调用几次用户自己就能决定。 中断服务程序为外设或各种事件服务,与正在执行的程序可能没有任何关系。而子程序是为主程序服务,有可能和外设没有关系。 中断服务程序还要额外考虑在程序中是否开(或关)中断,并力求在保护和恢复现场动作期间不被高级中断申请打断。 返回动作不同。RET与RETI有区别,后者除PC出栈外,还要对中断优先级状态触发器复位,即恢复中断优

6、先链。四、中断技术的优势四、中断技术的优势 计算机采用中断技术,大大提高了它的工作计算机采用中断技术,大大提高了它的工作效率和处理问题的灵活性。主要表现在四个方面:效率和处理问题的灵活性。主要表现在四个方面:1、解决了快速的CPU与慢速的外设之间的矛盾,使CPU与外设并行、分时工作。2、使计算机能够及时处理实时控制中的许多随机信息。3、使计算机具备处理故障的能力。4、使计算机具备从低功耗状态唤醒的能力。五、 任务4:信号灯的控制4一、要求一、要求在图1-3给出的任务1的电路的基础上,扩展如图5-1所示的相应外部电路,将并A端接到单片机的P3.2引脚上。编写程序,使程序在运行时,每当按一次图5-

7、1中的按键K,P1口的发光二极管就会亮、灭切换一次。图图5-1 任务任务4电路图电路图二、任务分析与实现二、任务分析与实现 在前面的任务中,我们只是让单片机执行一定的指令或程序来实现相应的功能。在程序的运行过程中,我们人并没有进行干预,没有做任何动作。而这次任务不一样,发光二极管的亮、灭变换取决于我们在程序运行过程中的一个按键的动作。按一下键将会在A端产生一个负脉冲,由这个负脉冲来完成发光二极管的亮、灭变换。#include void main ( ) P1= 0 x00; EA = 1; EX0 =1; IT0 =1;IT0=1,使外部中断0的触发方式为下降沿触发 while(1);void

8、 INT0_T3 ( ) interrupt 0 P1 = P1;中断允许寄存器中断允许寄存器IEIE:EAESET1EX1ET0EX0定时定时/ /计数控制寄存器计数控制寄存器TCONTCON: R-S触发器电路,74LS00是一个“与非”门。根据电路我们可以看出,当没有按下5-1中的按键K,a=0,b=1,两个与非门输出分别是A=1,B=0。当按下图中的按键K后,a=1,b=0,A、B端的电平就会进行切换,A=0,B=1,这样就会从A、B端输出相应的负脉冲和正脉冲。 在开关在ab之间转换过程中没有中间过程出现,这由R-S触发器电路特性决定。 将A端接到P3.2引脚,就是要从P3.2引脚向单

9、片机输入一个由按下按键所产生的负脉冲,由这个负脉冲来完成发光二极管的亮、灭变换。 MCS-51MCS-51的中断系统的中断系统内容简介一、51单片机的中断源及TCON二、中断优先级控制寄存器IP (0B8H)三、中断允许寄存器IE (0A8H) 四、中断应用前后要做的几项工作五、外部中断源的扩展(举例)一、51单片机的中断源及TCON CPUCPU在每个机器周期的在每个机器周期的S5P2S5P2期间期间,会自动查询,会自动查询各个各个中断申请标志位中断申请标志位,若查到某标志位被置位,若查到某标志位被置位, ,将启动中断机制。将启动中断机制。5151子系列允许子系列允许5 5个个(52(52子

10、系列子系列6 6个个) )中断源:中断源: 2 2个外部中断请求:个外部中断请求:INT0INT0,INT1INT1 2 2个片内定时器个片内定时器/ /计数器计数器T0T0和和T1T1中断请求:中断请求: TF0TF0,TF1TF1,(TF2TF25252子系列有子系列有T2T2) 1 1个串行口中断请求:个串行口中断请求:TI/RITI/RICPUCPU识别中断申请的依据识别中断申请的依据:单片机的中断源及单片机的中断源及TCONTCONCPU CPU 在每个机器周期的在每个机器周期的S5P2S5P2期间期间,会自动查询,会自动查询各个各个中断申请标志位中断申请标志位,若查到某标志位被置位

11、,若查到某标志位被置位, ,将启动中断机制。将启动中断机制。CPUCPU识别中断申请的依据识别中断申请的依据:TcTsTmTmTc=1/fosc Ts=2Tc Tm=12Tc=6TsTc=1/fosc Ts=2Tc Tm=12Tc=6TsS5S6S4S3S2S5S6S4S3S2S1定时器控制寄存器TCON (88H)TF1TF1 TR1TR1 TF0TF0 TR0TR0 IE1IE1 IT1IT1 IE0IE0 IT0IT0TCONTCONTF0/TF1TF0/TF1:定时器溢出中断申请标志位:定时器溢出中断申请标志位: =0=0:定时器未溢出;:定时器未溢出; =1=1:定时器溢出申请中断,


文档来源:https://www.renrendoc.com/paper/212652624.html

文档标签:

下载地址