中断系统及其应用.ppt
《中断系统及其应用.ppt》由会员分享,可在线阅读,更多相关《中断系统及其应用.ppt(80页珍藏版)》请在三一办公上搜索。
1、第六章 中断系统及其应用,6.1 中断的基本概念,6.1.1 中断概念6.1.2 中断源6.1.3 中断系统功能,6.1.1 中断概念,计算机在执行程序的过程中,由于CPU之外的某种原因,有必要尽快地中止该程序的执行,转而去执行相应的处理程序,待处理程序结束之后,再返回来继续执行从断点处开始的原程序。这种程序在执行过程中由于外界的原因而被中间打断的情况称为“中断”。,6.1.1 中断概念,中断之后,CPU执行的处理程序,称为中断服务程序,而把中断之前原来运行的程序称为主程序。主程序被断开的位置(地址)称为断点。能够向CPU发出中断申请的来源,称为中断源,它是引起CPU中断的原因。中断源向CPU
2、要求服务的请求称为中断请求,或中断申请。,6.1.1 中断概念,CPU响应中断,进行中断处理类似于调用子程序。其区别在于,由于引起中断的原因是随机发生的,因而转向中断服务程序进行中断处理也是随机的;而调用子程序,则是在程序中事先安排好的。,6.1.1 中断概念,引入中断的益处实现分时操作。CPU在启动外设之后,继续执行主程序,同时外设也开始工作。当外设需要服务时,便向CPU发出中断申请,CPU转去为外设作短暂的服务,中断处理完毕又返回执行主程序,外设也继续工作。这样就解决了快速的CPU与慢速的外设之间的矛盾,CPU可以和多个外设同时工作,大大提高了CPU的利用率。,6.1.1 中断概念,实现实
3、时处理。所谓实时,就是指物理事件发生的真实时间。实时处理,就是指计算机对外来信号的响应要及时,或者说对外来的信息要在限定的时间内对其进行处理,否则会丢失信息,产生错误的处理。微型机用于实时控制时,现场的各种参数、状态信息在任何时刻均可发出中断请求,要求CPU及时进行处理,引进中断后就能迅速作出响应处理。一般来说,实现实时任务的手段就是采用中断。,6.1.1 中断概念,及时处理故障。微型机在运行过程中,出现一些事先无法预料的故障是难免的,如电源突变,运算溢出等,采用中断,计算机便可自行处理而无需停机。由于中断请求是随机输入的,因中断错误而引起事故的再现性极差,所以对于中断故障方面的查错和测试比较
4、困难。在利用中断技术时,无论是在硬件设计或软件编制方面更应确保正确无误。,6.1 中断的基本概念,6.1.1 中断概念6.1.2 中断源6.1.3 中断系统功能,6.1.2 中断源,中断源是提出中断申请的来源。中断源通常可分为以下几种。设备中断由计算机系统各组成部分的外部设备发出的中断申请,称为设备中断。如键盘、行打印机、A/D转换器等。定时时钟 定时提出中断申请。例如,在定时控制或定时数据采集系统中,由外部时钟电路定时,一旦到达规定的时间,时钟电路就向CPU发出中断申请。,6.1.2 中断源,故障源目前,微型机的内存RAM是采用半导体存储器,所以在电源掉电时,需要接入备用电源供电电路,以便保
5、护存储器RAM中的信息。一般的做法是,在直流电源上并联电容,当电容电压因电源掉电下降到一定值时就发出中断申请,CPU响应中断执行保护现场信息的操作。,6.1.2 中断源,程序性中断源例如,为调试程序而设置断点、单步工作等。对于每个中断源,不仅要求能发出中断请求信号,而且这个信号还要能保持一定的时间,直至CPU响应这个中断请求后才能而且必须撤消这个中断请求信号。这样既不会因CPU未及时响应而丢失中断申请信号,也不会出现多次重复中断的情况。所以,要求每个中断源的接口电路中有一个中断请求触发器。另外,在实际系统中,往往有多个中断源,为了增加控制的灵活性,在每个中断源的接口电路中还设置一个中断屏蔽触发
6、器,由它控制该中断源的中断申请信号能否送到CPU。,6.1 中断的基本概念,6.1.1 中断概念6.1.2 中断源6.1.3 中断系统功能,6.1.3 中断系统功能,实现中断及返回当某一中断源发出中断申请时,若CPU允许响应这个中断请求,则CPU在现行指令执行完后,把断点处的PC值(即下一条要执行指令的地址)、有关寄存器的内容和标志位的状态推入堆栈保存下来(称为保护断点和保护现场);,6.1.3 中断系统功能,然后再转到相应的中断服务程序的入口,同时清除中断请求触发器;当中断服务程序执行完以后,再恢复被保留的寄存器的内容和标志位的状态(称为恢复现场);并将断点地址从堆栈中弹出到PC,使CPU返
7、回断点处,继续执行主程序。,6.1.3 中断系统功能,实现中断优先权排队通常在系统中有多个中断源,有时出现两个或多个中断源同时提出中断请求的情况,这就要求CPU既能区分各个中断源的请求,又能确定首先为哪一个中断源服务。为了解决这一间题,用户事先根据事件处理的紧迫性和实时性给各中断源规定了优先级别,即规定了中断源享有的先后不同的响应权利,称为中断优先权。CPU按中断优先权的高低逐次响应中断的过程称为中断优先权排队。当有两个或多个中断源同时提出中断请求时,CPU能识别出优先权高的中断源,并响应它的中断请求,待处理完后,再响应优先权低的中断源。,6.1.3 中断系统功能,实现中断嵌套当CPU响应某一
8、中断源请求而进行中断处理时,若有优先级别更高的中断源发出中断申请,则CPU应能中断正在执行的中断服务程序,保留这个程序的断点(类似于子程序嵌套),响应优先权级别高的中断,在高级中断处理完后,再返回被中断的中断眼务程序,继续原 先的处理,这个过程就是中断 嵌套。,6.1.3 中断系统功能,优先权低的中断不能中断优先权高的中断处理。所以,当CPU正在进行某一优先权的中断处理时,如果有同级或优先权级别低的中断源提出中断申请,则CPU暂不响应这个中断申请,直至正在处理的中断服务程序执行完以后才去处理新的中断申请。,6.2 MCS-51单片机的中断系统,MCS-51的中断系统主要由四个与中断有关的特殊功
9、能寄存器、中断入口、顺序查询逻辑电路等组成。,6.2 MCS-51单片机的中断系统,6.2.1 中断源6.2.2 中断控制6.2.3 中断处理过程,6.2.1 中断源,8051单片机有五个中断请求源。两个外部中断源INT0、INT1;两个片内定时器/计数器(T0、T1)的溢出中断源TF0和TF1;一个片内串行口接收或发送中断源RI或TI。,6.2.1 中断源,外部中断源外部中断源是由I/O设备请求信号或掉电故障等异常事件中断请求信号提供的。IT0外部中断0请求,由P3.2脚输入。通过外部中断0触发方式控制位IT0(TCON.0)来决定中断输入信号是低电平有效还是负跳变有效。一旦输入信号有效,便
10、使IE1标志置1,向CPU申请中断。,6.2.1 中断源,INT1外部中断1请求,由P3.3脚输入。通过外部中断1触发方式控制位IT1(TCON.1),来决定中断输人信号是低电平有效还是负跳变有效。一旦输入信号有效,便使IE1标志置1,向CPU申请中断。,6.2.1 中断源,2.内部中断源内部中断源是由单片机内部定时器溢出和串行口接收或发送数据提出的中断申请。TF0定时器T0溢出中断请求。当定时器T0产生溢出时,定时器T0中断请求标志TF0置1,请求中断处理。,6.2.1 中断源,TF1定时器T1溢出中断请求。当定时器T1产生溢出时,定时器T1中断请求标志TF1置1,请求中断处理。RI或TI串
11、行口中断请求。当串行口接收或发送完一帧数据时,内部串行口中断请求标志RI或TI置1,请求中断处理。,6.2.1 中断源,中断请求标志特殊功能寄存器TCON和SCON中与中断源有关的位;其作用有两种:一种是作为触发方式控制位,控制外部中断请求输入信号的有效极性;另一种是作为中断请求标志位,锁存中断源,向CPU提出中断申请,直到GPU响应中断,才由硬件或软件使相应的标志位清0。,6.2.1 中断源,TCON中的中断标志位TCON为定时器T0和T1的控制寄存器,同时也锁存T0和T1的溢出中断源和外部中断源等。TCON的字节地址为88H,与中断源有关的位如下:,6.2.1 中断源,TF1定时器T1溢出
12、中断标志。T1被允许计数以后,从初值开始加1计数,直至计满溢出时由硬件置TF1=1,向CPU请求中断。此标志一直保持到CPU响应中断后,才由硬件自动清0。也可用软件查询该标志,并由软件清0。TF0定时器T0溢出中断标志。其功能、置1和清0与TF1相似。,6.2.1 中断源,IE1外部中断1请求标志。IE1=1时,外部中断1向CPU请求中断,当CPU响应该中断时,由硬件自动清0(边沿触发方式)。如果是电平触发方式,则在CPU执行完中断服务程序之前由外部中断源撤消有效电平,使IE1清0。,6.2.1 中断源,IT1 外部中断触发方式控制位。当IT1=0时,外部中断1控制为电平触发方式。在这种方式下
13、,CPU在每个机器周期的S5P2期间采样/INT1的输入电平,当检测为低电平时,则认为有中断申请,随即使IE1标志置1;当检测为高电平时,则认为无中断申请或中断申请已撤除,随即使IE1标志清0。在电平触发方式中,外部中断输入/INT1必须保持低电平,直到CPU响应该中断为止,并且在该中断服务程序执行完毕之前,外部中断请求信号必须撤除;否则,将产生另一次中断。,6.2.1 中断源,当IT1=I时,外部中断1控制为边沿触发方式。在这种方式下,CPU在每一个机器周期的S5P2期间采样/INT1的输入电平;如果相继的两次采祥中,一个周期内采样到/INT1为高电平,接着的下一个周期内采样到了/INT1为
14、低电平,则使IE1置1。此时表示外部中断1正在向CPU申请中断,IE1标志一直保持到该中断被CPU响应时为止,才由硬件自动清0。,6.2.1 中断源,因为每个机器周期内采样一次外部中断输入电平,所以采用边沿触发方式时,为保证CPU在两个机器周期内检测到中断请求信号由高到低的负跳变,外部中断源输入的高电平和低电平时间必须保持在12个振荡周期以上。,6.2.1 中断源,IE0外部中断请求标志,其功能与IE1类似。IT0外部中断触发方式控制位,其功能与IT1类似。,6.2.1 中断源,SCON中的中断标志SCON是串行口控制寄存器。它的字节地址是98H,其低2位为锁存串行口的接收中断和发送中断标志。
15、,6.2.1 中断源,T1串行口发送中断标志。串行口每发送完一帧数据,便由内部硬件使T1置1,表示串行口发送器向CPU申请中断。CPU响应发送器中断诸求时,并不清除T1,所以必须在中断服务程序中用CLR T1或ANL SCON,#0FDH等指令清除T1。,6.2.1 中断源,R1串行口接收中断标志。串行口每接收完一帧数据,由内部硬件置位R1,使R1=1,表示串行口接收器向CPU申请中断。CPU响应接收器中断请求时不会清除R1,必须由用户在中断服务程序中用软件使R1清0。MCS-51单片机复位后,TCON,SCON中各位均清0。,6.2 MCS-51单片机的中断系统,6.2.1 中断源6.2.2
16、 中断控制6.2.3 中断处理过程,6.2.2 中断控制,中断允许和禁止MCS-51单片机中,特殊功能寄存器IE为中断允许寄存器,通过向IE写入中断控制字,控制CPU对中断源的开放和屏蔽,以及每个中断源是否允许中断。中断允许寄存器IE的字节地址是A8H,它的格式如下;,6.2.2 中断控制,EA EA为CPU中断总允许位。当EA=1时,CPU开放中断,而每个中断源是否允许还是禁止,分别由各自的允许位确定;当EA=0时,CPU屏蔽所有的中断申请,称为关中断,或禁止中断。ESES为串行口中断允许位。ES=1,允许串行口中断;ES=0,禁止串行口中断。ET1ET1为定时器T1中断允许位。ET1=1,
17、允许T1中断;ET1=0,禁止T1中断。,6.2.2 中断控制,EX1EX1为外部中断1中断允许位。EX1=1,允许外部中断1中断;EX1=0,禁止外部中断1中断。ET0ET0为定时器T0中断允许位。ET0=1,允许T0中断;ET0=0,禁止T0中断;EX0EX0为外部中断0中断允许位。EX0=1,允许外部中断0中断;EX0=0,禁止外部中断0中断。,6.2.2 中断控制,MCS-51复位后,IE清0。由用户程序使IE中相应的位置1或清0,实现允许或禁止各中断源的中断请求。欲使某一个中断源允许中断,则必须同时使CPU开中断。控制字的写入,可用位操作指令或字节操作指令来实现。,6.2.2 中断控
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中断 系统 及其 应用
链接地址:https://www.31ppt.com/p-6219833.html