微机原理与接口技术 漆强版 第10章 中断与中断管理_第1页
微机原理与接口技术 漆强版 第10章 中断与中断管理_第2页
微机原理与接口技术 漆强版 第10章 中断与中断管理_第3页
微机原理与接口技术 漆强版 第10章 中断与中断管理_第4页
微机原理与接口技术 漆强版 第10章 中断与中断管理_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第1010章章第第1010章章 中断与中断管理中断与中断管理第第1010章章 中断与中断管理中断与中断管理 本章主要内容本章主要内容8086的中断系统的中断系统 21中断概念中断概念 13第第1010章章 中断与中断管理中断与中断管理 10.1 10.1 中断概念中断概念 1 1、中断中断v 在在CPUCPU正常执行程序的过程中,如果发生内正常执行程序的过程中,如果发生内部部/ /外部事件或是程序预先安排的事件急需外部事件或是程序预先安排的事件急需CPUCPU处理时,处理时,CPUCPU会暂时中断正在执行的程会暂时中断正在执行的程序,转去执行相应的事件处理程序。待事序,转去执行相应的事件处理

2、程序。待事件处理完毕后,件处理完毕后,CPUCPU再返回到被暂时中断的再返回到被暂时中断的程序继续执行。这个过程就称为程序继续执行。这个过程就称为中断中断。v 中断中断是微处理器是微处理器CPUCPU与外部设备交换信息的与外部设备交换信息的一种方式,是一种方式,是CPUCPU处理随机事件和外部请求处理随机事件和外部请求的主要手段。的主要手段。 10.1.1 10.1.1 中断与中断源中断与中断源第第1010章章 中断与中断管理中断与中断管理 1 1、中断、中断 v 最初,中断技术引入计算机系统,只是为了解决最初,中断技术引入计算机系统,只是为了解决快速的快速的CPUCPU与慢速的外部设备之间传

3、送数据的矛与慢速的外部设备之间传送数据的矛盾。盾。v 例如:打印输出时,例如:打印输出时,CPUCPU传送数据的速度高,而传送数据的速度高,而打印机打印的速度低。如果不采用中断技术,打印机打印的速度低。如果不采用中断技术,CPUCPU将经常处于等待状态,效率极低。采用中断将经常处于等待状态,效率极低。采用中断技术后,技术后,CPUCPU可以正常进行其它的工作,只在打可以正常进行其它的工作,只在打印机缓冲区中的当前内容打印完毕发出中断请求印机缓冲区中的当前内容打印完毕发出中断请求之后,才予以响应。这时,之后,才予以响应。这时,CPUCPU暂时停止执行当暂时停止执行当前程序而转去执行向缓冲区传送数

4、据的程序,传前程序而转去执行向缓冲区传送数据的程序,传送完成后又返回原来的程序执行。这样就大大地送完成后又返回原来的程序执行。这样就大大地提高了提高了CPUCPU的效率。的效率。第第1010章章 中断与中断管理中断与中断管理 1 1、中断、中断 v 随着计算机技术的发展,中断技术不断被随着计算机技术的发展,中断技术不断被赋予新的功能,它可以使计算机系统完成赋予新的功能,它可以使计算机系统完成如下功能:如下功能:CPUCPU与外部设备并行工作与外部设备并行工作实时信息处理实时信息处理故障检测和自动处理故障检测和自动处理分时处理分时处理第第1010章章 中断与中断管理中断与中断管理 2 2、中断源

5、、中断源 v 产生中断请求的设备或事件产生中断请求的设备或事件称为称为“中断源中断源”。v 根据中断源不同,中断可分为三类:根据中断源不同,中断可分为三类:由计算机硬件异常或故障引起的中断,也称由计算机硬件异常或故障引起的中断,也称为为内部异常中断内部异常中断;程序中执行了中断指令引起的中断,也称为程序中执行了中断指令引起的中断,也称为软件中断或软中断软件中断或软中断;外部设备(如输入、输出设备)请求引起的外部设备(如输入、输出设备)请求引起的中断,也称为中断,也称为硬件中断或外部中断硬件中断或外部中断。第第1010章章 中断与中断管理中断与中断管理 10.1.2 10.1.2 中断系统的功能

6、中断系统的功能 中断请求中断请求中断判优中断判优中断响应中断响应中断返回中断返回中断服务中断服务第第1010章章 中断与中断管理中断与中断管理 v 中断过程需要由计算机的软、硬件共同完成,中断过程需要由计算机的软、硬件共同完成,能完成中断过程的所有硬件和软件构成能完成中断过程的所有硬件和软件构成中断系中断系统统。v 中断系统应具备如下功能:中断系统应具备如下功能:接收中断请求接收中断请求中断源识别中断源识别中断源判优中断源判优中断嵌套中断嵌套 中断处理与返回中断处理与返回10.1.2 10.1.2 中断系统的功能中断系统的功能 第第1010章章 中断与中断管理中断与中断管理 v 对于不同的微机

7、系统和不同的中断方式对于不同的微机系统和不同的中断方式(如软件、硬件中断),(如软件、硬件中断),CPUCPU进行中断处进行中断处理的具体过程不完全一样。理的具体过程不完全一样。 v 但都要经过:请求中断、中断判优、中但都要经过:请求中断、中断判优、中断响应、中断处理和中断返回等阶段。断响应、中断处理和中断返回等阶段。 10.1.3 10.1.3 简单的中断处理过程简单的中断处理过程 第第1010章章 中断与中断管理中断与中断管理 (1 1)中断请求触发器置位)中断请求触发器置位vCPUCPU只有在只有在当前指令执行结束当前指令执行结束后才会检测有无中断后才会检测有无中断请求发生,因此对于外部

8、中断,中断源要向请求发生,因此对于外部中断,中断源要向CPUCPU发发出中断请求,就必须把自己的中断请求信号保持到出中断请求,就必须把自己的中断请求信号保持到CPUCPU响应,才可以清除。响应,才可以清除。v故要求每一个中断源都有一个中断请求触发器,用故要求每一个中断源都有一个中断请求触发器,用于记录中断请求标志。当提出中断请求时,该触发于记录中断请求标志。当提出中断请求时,该触发器被置位,如下图所示。器被置位,如下图所示。1 1、CPUCPU响应中断的条件响应中断的条件第第1010章章 中断与中断管理中断与中断管理 (2 2)中断屏蔽触发器置位)中断屏蔽触发器置位v在通常情况下,往往有多个中

9、断源。在通常情况下,往往有多个中断源。v在外设接口中,为每一个中断源设置了一个中断屏蔽在外设接口中,为每一个中断源设置了一个中断屏蔽触发器,用来开放或关闭中断源的请求。触发器,用来开放或关闭中断源的请求。v只有中断屏蔽触发器设置为只有中断屏蔽触发器设置为“1”1”时,外设的中断请求时,外设的中断请求信号才能被送到信号才能被送到CPUCPU,如下图所示。,如下图所示。1 1、CPUCPU响应中断的条件响应中断的条件第第1010章章 中断与中断管理中断与中断管理 (3 3)中断是开放的)中断是开放的v外部中断外部中断是否响应,还取决于是否响应,还取决于CPUCPU是允许中断还是是允许中断还是禁止中

10、断。禁止中断。CPUCPU通过内部设置的一个中断允许触发通过内部设置的一个中断允许触发器(器(标志寄存器标志寄存器FRFR的的IFIF位位),来开放或关闭可屏蔽),来开放或关闭可屏蔽中断中断INTRINTR。执行执行STISTI指令后,指令后,IFIF置置“1”1”,称为开中断,允,称为开中断,允许许CPUCPU响应响应INTRINTR请求;请求;执行执行CLICLI指令后,指令后,IFIF清清“0”0”时,称为关中断,时,称为关中断,禁止禁止CPUCPU响应响应INTRINTR请求。请求。1 1、CPUCPU响应中断的条件响应中断的条件第第1010章章 中断与中断管理中断与中断管理 (4 4

11、)CPUCPU在执行当前指令的最后一个时钟周期在执行当前指令的最后一个时钟周期vCPUCPU在执行在执行当前指令当前指令的最后一个时钟周期才去查询的最后一个时钟周期才去查询INTRINTR引脚。引脚。v若查询到该引脚信号为高电平,则表示收到有效中若查询到该引脚信号为高电平,则表示收到有效中断请求信号。断请求信号。v在开中断(即在开中断(即IFIF1 1)的情况下,)的情况下,CPUCPU在下一个总线在下一个总线周期不进入取指周期,而是进入中断响应周期处理周期不进入取指周期,而是进入中断响应周期处理中断。中断。1 1、CPUCPU响应中断的条件响应中断的条件第第1010章章 中断与中断管理中断与

12、中断管理 1 1、CPUCPU响应中断的条件响应中断的条件中断响应、服务中断响应、服务及返回流程图及返回流程图 第第1010章章 中断与中断管理中断与中断管理 vCPUCPU进入中断响应周期后,自动完成如下操作:进入中断响应周期后,自动完成如下操作:(1 1)关闭中断关闭中断 vFRFR中的中断标志位中的中断标志位IFIF清零;清零;(2 2)保护断点保护断点v将当前将当前CSCS和和IPIP的内容压入堆栈保存,以便中断处理的内容压入堆栈保存,以便中断处理完毕后能返回被中断的原程序继续执行;完毕后能返回被中断的原程序继续执行;(3 3)送中断类型号送中断类型号v在中断响应周期的第二个总线周期中

13、,由中断控制在中断响应周期的第二个总线周期中,由中断控制器给出器给出中断类型号中断类型号,CPUCPU根据根据中断类型号中断类型号获取中断获取中断服务子程序的入口地址,并装入服务子程序的入口地址,并装入CSCS与与IPIP;v一旦装入完毕,中断服务程序就开始执行。一旦装入完毕,中断服务程序就开始执行。 2 2、CPUCPU对中断的响应对中断的响应第第1010章章 中断与中断管理中断与中断管理 v中断服务程序中断服务程序,就是为实现中断源所期望达到的功能,就是为实现中断源所期望达到的功能而编写的程序。而编写的程序。v步骤:步骤:(1 1)保护现场保护现场 为使中断处理程序不破坏主程序中寄存器的内

14、容,应先将断为使中断处理程序不破坏主程序中寄存器的内容,应先将断点处各寄存器的内容压入堆栈保护起来;点处各寄存器的内容压入堆栈保护起来;(2 2)中断服务中断服务不同的中断请求,有各自不同的中断服务内容;不同的中断请求,有各自不同的中断服务内容;需要根据中断源所要完成的功能,事先编写相应的中断服务需要根据中断源所要完成的功能,事先编写相应的中断服务程序存入内存;程序存入内存;(3 3)恢复现场恢复现场中断处理完后,恢复主程序断点处各寄存器的内容。中断处理完后,恢复主程序断点处各寄存器的内容。 3 3、CPUCPU对中断的处理对中断的处理第第1010章章 中断与中断管理中断与中断管理 v在中断服

15、务子程序的最后,要开中断(在中断服务子程序的最后,要开中断(CPUCPU能能响应新的中断请求)并安排一条中断返回指令响应新的中断请求)并安排一条中断返回指令IRETIRET。v执行指令执行指令IRETIRET后,之前压入堆栈的断点值及程后,之前压入堆栈的断点值及程序状态字弹回到序状态字弹回到CSCS、IPIP及及FLAGSFLAGS中,中,CPUCPU继续执继续执行主程序。行主程序。 4 4、中断的返回、中断的返回第第1010章章 中断与中断管理中断与中断管理 10.1.4 10.1.4 中断源识别及优先权判断中断源识别及优先权判断1 1、中断源识别中断源识别v原因:原因: 当系统中有多个中断

16、源时,一旦发生中断,当系统中有多个中断源时,一旦发生中断,CPUCPU需确定是哪一个中断源提出了中断请求。需确定是哪一个中断源提出了中断请求。 v任务:任务: 确定该响应的是哪个中断源;确定该响应的是哪个中断源; 找到该中断服务程序的入口地址。找到该中断服务程序的入口地址。 第第1010章章 中断与中断管理中断与中断管理 1 1、中断源识别的方法、中断源识别的方法(1 1)软件查询法软件查询法 v 任一中断请求,都可向任一中断请求,都可向CPUCPU发出发出INTRINTR信号;信号;v 将中断请求信号相将中断请求信号相“或或”后,作为后,作为INTRINTR信号。信号。第第1010章章 中断

17、与中断管理中断与中断管理 (1 1)软件查询法软件查询法v优点优点 硬件电路简单,无需优先权的硬件排队电硬件电路简单,无需优先权的硬件排队电路,可随时修改优先级(改变查询的先后路,可随时修改优先级(改变查询的先后顺序);顺序);v缺点缺点 软件查询由询问转至相应中断服务程序入软件查询由询问转至相应中断服务程序入口时间长,尤其在中断源较多的情况下,口时间长,尤其在中断源较多的情况下,中断响应的实时性受到影响。中断响应的实时性受到影响。1 1、中断源识别的方法、中断源识别的方法第第1010章章 中断与中断管理中断与中断管理 1 1、中断源识别、中断源识别(2 2)中断向量法中断向量法v通过硬件控制

18、电路形成一个供通过硬件控制电路形成一个供CPUCPU识别中断识别中断源的中断向量号,并由此中断向量号实现中源的中断向量号,并由此中断向量号实现中断响应。断响应。第第1010章章 中断与中断管理中断与中断管理 (2 2)中断向量法中断向量法v优点优点 CPUCPU可直接通过中断向量表转向相应的处理程可直接通过中断向量表转向相应的处理程序,不需要序,不需要CPUCPU去逐个检测和确定中断源,因去逐个检测和确定中断源,因此大大加快了中断响应的速度。此大大加快了中断响应的速度。 1 1、中断源识别的方法、中断源识别的方法第第1010章章 中断与中断管理中断与中断管理 v 系统按任务的轻重缓急,为每个中

19、断源进行排系统按任务的轻重缓急,为每个中断源进行排队,并给出顺序编号,称为队,并给出顺序编号,称为中断优先级中断优先级。v 可事先给各中断源安排一个中断优先级次序,可事先给各中断源安排一个中断优先级次序,当多个中断源同时申请时,按优先级从高到低当多个中断源同时申请时,按优先级从高到低的次序来处理,选中当前优先级最高的中断进的次序来处理,选中当前优先级最高的中断进行处理,这个过程称为行处理,这个过程称为中断优先级判优中断优先级判优。v 在一般情况下,系统的内部中断优先于外部中在一般情况下,系统的内部中断优先于外部中断,不可屏蔽中断优先于可屏蔽中断。断,不可屏蔽中断优先于可屏蔽中断。v 中断源的优

20、先级判优可以通过中断源的优先级判优可以通过软件查询软件查询方式和方式和硬件排队电路硬件排队电路两种方法实现。两种方法实现。2 2、 中断优先权中断优先权第第1010章章 中断与中断管理中断与中断管理 (1 1) 软件查询方式软件查询方式v基本原理基本原理 当当CPUCPU接收到中断请求信接收到中断请求信号后,执行优先级判优的号后,执行优先级判优的查询程序,逐个检测外设查询程序,逐个检测外设中断请求标志位的状态;中断请求标志位的状态; 检测的顺序:优先级的高检测的顺序:优先级的高低;低; 最先检测到的中断源具有最先检测到的中断源具有最高的优先级;最高的优先级; 最后检测到的中断源具有最后检测到的

21、中断源具有最低的优先级。最低的优先级。第第1010章章 中断与中断管理中断与中断管理 v 优点优点硬件电路简单,无需优先权硬件排队硬件电路简单,无需优先权硬件排队电路,可以通过修改程序的方法随时电路,可以通过修改程序的方法随时修改优先级;修改优先级;v 缺点缺点软件查询影响中断响应的实时性。软件查询影响中断响应的实时性。 (1 1) 软件查询方式软件查询方式第第1010章章 中断与中断管理中断与中断管理 v 硬件优先权排队电路是专门的硬件电路;硬件优先权排队电路是专门的硬件电路;v 优点优点节省节省CPUCPU的时间,而且中断响应较快;的时间,而且中断响应较快;v 缺点缺点成本比较高。成本比较

22、高。v 菊花链菊花链(或称链式)优先权排队电路(或称链式)优先权排队电路在每个中断源的电路中设置一个菊花链逻辑电路在每个中断源的电路中设置一个菊花链逻辑电路当某设备有中断请求时,会向当某设备有中断请求时,会向CPUCPU发送中断请求发送中断请求信号信号若若CPUCPU允许中断,则允许中断,则CPUCPU发出中断响应信号信号在发出中断响应信号信号在菊花链中传递菊花链中传递如果某设备没有中断请求,则信号通过菊花链逻如果某设备没有中断请求,则信号通过菊花链逻辑电路继续往下一级传递。辑电路继续往下一级传递。 (2 2) 硬件优先权排队电路硬件优先权排队电路第第1010章章 中断与中断管理中断与中断管理

23、 vIntel 80X86Intel 80X86系列微机有一个灵活的中断系统,可系列微机有一个灵活的中断系统,可以处理以处理256256种中断源,每个中断源都有对应的中断种中断源,每个中断源都有对应的中断类型号(类型号(0 0255D255D)供)供CPUCPU识别。识别。10.2 808610.2 8086的中断系统的中断系统第第1010章章 中断与中断管理中断与中断管理 1 1、外部中断外部中断v 外部中断是指由外部设备通过硬件请求外部中断是指由外部设备通过硬件请求的方式产生的中断;的方式产生的中断;v 外部中断也称为外部中断也称为硬件中断硬件中断。v 外部中断可分为:外部中断可分为:非屏

24、蔽中断非屏蔽中断可屏蔽中断可屏蔽中断10.2.1 808610.2.1 8086的中断类型的中断类型第第1010章章 中断与中断管理中断与中断管理 (1 1)非屏蔽中断)非屏蔽中断NMINMIv当外设向当外设向CPUCPU提出中断请求时,提出中断请求时,CPUCPU在当前指令执行在当前指令执行结束后,就立即无条件的予以响应,这样的中断就结束后,就立即无条件的予以响应,这样的中断就是是非屏蔽中断非屏蔽中断。v由由CPUCPU的的NMINMI引脚引入,引脚引入,NMINMI上升沿时触发,维持上升沿时触发,维持2 2个个T T高电平。高电平。v不受中断允许标志不受中断允许标志IFIF的影响;的影响;

25、v中断类型号固定为中断类型号固定为2 2;v在外部中断源中优先级最高;在外部中断源中优先级最高;v主要用于处理系统的意外或故障,如:电源掉电、主要用于处理系统的意外或故障,如:电源掉电、存储器读存储器读/ /写错误等。写错误等。 第第1010章章 中断与中断管理中断与中断管理 (2 2)可屏蔽中断)可屏蔽中断INTRINTRv 受受CPUCPU中断允许标志位中断允许标志位IFIF的控制:的控制:IFIF=1=1时,时,CPUCPU响应中断请求;响应中断请求;IFIF=0=0时,时,CPUCPU屏蔽中断请求,不予响应;屏蔽中断请求,不予响应;v 由由CPUCPU的的INTRINTR引脚引入,高电

26、平有效。引脚引入,高电平有效。v 中断类型号由中断请求的设备提供。中断类型号由中断请求的设备提供。第第1010章章 中断与中断管理中断与中断管理 2 2、内部中断、内部中断v 内部中断内部中断是由是由CPUCPU运行程序异常或执行内部运行程序异常或执行内部程序调用引起的一种中断;程序调用引起的一种中断;v 内部中断内部中断也称为也称为软件中断。软件中断。v 不受不受IFIF影响。影响。v 中断类型号由指令提供。中断类型号由指令提供。第第1010章章 中断与中断管理中断与中断管理 2 2、内部中断、内部中断 内部中断有:内部中断有:v除法错中断除法错中断 执行除法指令时,若除数为执行除法指令时,

27、若除数为0 0或商超过寄存器所能或商超过寄存器所能表达的范围,则表达的范围,则CPUCPU立即产生一个立即产生一个0 0型中断。型中断。 v溢出中断溢出中断 如果上一条指令使溢出标志位如果上一条指令使溢出标志位OFOF为为1 1,则执行,则执行INTOINTO指令产生指令产生4 4型中断。型中断。 vINT nINT n指令中断指令中断 80868086的指令系统中有一条的指令系统中有一条INT nINT n指令,执行这条指指令,执行这条指令就会立即产生中断。令就会立即产生中断。第第1010章章 中断与中断管理中断与中断管理 2 2、内部中断、内部中断 v单步中断单步中断 当单步标志(陷阱标志

28、)当单步标志(陷阱标志)TFTF置置“1”1”时,时,80 x8680 x86处处于单步工作方式。在单步工作时,每执行完一条于单步工作方式。在单步工作时,每执行完一条指令,指令,CPUCPU自动产生中断类型号为自动产生中断类型号为1 1的中断。的中断。v断点中断断点中断 断点中断是断点中断是80 x8680 x86提供的一种调试程序的手段。用提供的一种调试程序的手段。用于设置程序中的断点,中断类型号为于设置程序中的断点,中断类型号为3 3。第第1010章章 中断与中断管理中断与中断管理 中断优先级中断优先级由高到低分别为:由高到低分别为:v 除法错、除法错、INT nINT n指令、溢出、断点

29、中断指令、溢出、断点中断v 非屏蔽中断非屏蔽中断NMINMIv 可屏蔽中断可屏蔽中断INTRINTRv 单步中断单步中断第第1010章章 中断与中断管理中断与中断管理 1 1、中断向量表的概念、中断向量表的概念(1 1)中断类型号)中断类型号在在80868086系统中,共设有系统中,共设有256256类中断,每类中断,每类中断分配到一个类中断分配到一个8 8位的编号,这个编位的编号,这个编号就叫做中断类型号。号就叫做中断类型号。中断类型号的范围:中断类型号的范围: 0000FFHFFH(0 0255D255D)10.2.2 10.2.2 中断向量和中断向量表中断向量和中断向量表第第1010章章

30、 中断与中断管理中断与中断管理 v 需要响应的每一类中断都编写有相应的中需要响应的每一类中断都编写有相应的中断服务程序,并预先装入内存,断服务程序,并预先装入内存,中断服务中断服务程序在内存中的入口地址程序在内存中的入口地址叫中断向量。叫中断向量。v 每个中断类型对应一个中断向量。每个中断类型对应一个中断向量。v 中断向量的字长是中断向量的字长是4 4个字节个字节2 2个字节的段地址个字节的段地址2 2个字节的偏移地址个字节的偏移地址(2 2)中断向量)中断向量第第1010章章 中断与中断管理中断与中断管理 v 把系统中所有的中断向量集中起来放到存储器把系统中所有的中断向量集中起来放到存储器的

31、某一区域内,的某一区域内,这个存放中断向量的存储区这个存放中断向量的存储区就就叫中断向量表或中断服务程序入口地址表。叫中断向量表或中断服务程序入口地址表。v 80868086系统把中断向量表安排在内存地址系统把中断向量表安排在内存地址00000H00000H003FFH003FFH区域(区域(1K1K)。)。v 每四个连续字节每四个连续字节存放一个中断向量,存放一个中断向量,高地址高地址2 2个字节单元放段地址(个字节单元放段地址(CSCS)低地址低地址2 2个字节单元中放偏移地址个字节单元中放偏移地址(IP)(IP)。(3 3)中断向量表)中断向量表第第1010章章 中断与中断管理中断与中断

32、管理 v 为了便于在中断向量表中找到中断向量,通为了便于在中断向量表中找到中断向量,通常设置一种指针,来指出中断向量存放在中常设置一种指针,来指出中断向量存放在中断向量表的具体位置;断向量表的具体位置;v 存放中断向量的存放中断向量的4 4个存储单元的个存储单元的最低地址最低地址称称为向量表地址指针。为向量表地址指针。v 计算方法:计算方法: 中断类型号中断类型号4 4(4 4)中断向量表地址指针)中断向量表地址指针第第1010章章 中断与中断管理中断与中断管理 v 如果已知一个中断类型号,则通过两次地址转如果已知一个中断类型号,则通过两次地址转换(换(中断类型号到中断向量表地址;中断向量中断

33、类型号到中断向量表地址;中断向量表地址到中断处理程序入口地址表地址到中断处理程序入口地址)后,可到达)后,可到达中断服务程序。中断服务程序。 (4 4)中断向量表地址指针)中断向量表地址指针第第1010章章 中断与中断管理中断与中断管理 v在在80868086系统中各种中断的响应和处理过程是不完全相系统中各种中断的响应和处理过程是不完全相同的,主要区别还在于同的,主要区别还在于如何获取相应的中断类型号如何获取相应的中断类型号。1 1、顺序查询、顺序查询(1 1)中断源识别)中断源识别vCPUCPU在当前指令执行完后,按内部中断(除法出错、在当前指令执行完后,按内部中断(除法出错、INT nIN

34、T n、断点中断、溢出中断)、断点中断、溢出中断)、NMINMI、INTRINTR、单步中、单步中断的顺序来逐个查询是否有中断请求,对于断的顺序来逐个查询是否有中断请求,对于INTRINTR还要还要判断判断CPUCPU是否允许中断(是否允许中断(IF=1IF=1)。)。(2 2)80868086的中断优先级的中断优先级vCPUCPU检测的顺序是按优先级的高低来进行的,最先检测检测的顺序是按优先级的高低来进行的,最先检测到的中断源具有最高的优先级,最后检测到的中断源到的中断源具有最高的优先级,最后检测到的中断源具有最低的优先级。具有最低的优先级。10.2.3 808610.2.3 8086中的中

35、断响应和处理过程中的中断响应和处理过程第第1010章章 中断与中断管理中断与中断管理 v当当内部中断内部中断发生时,是按预定方式得到中断类型号(发生时,是按预定方式得到中断类型号(专用中断:专用中断:0 0、1 1、3 3、4 4)v在用在用软件中断指令软件中断指令INT nINT n时,中断指令本身就为时,中断指令本身就为CPUCPU提提供了中断类型号供了中断类型号n n。v非屏蔽中断非屏蔽中断类型号固定是类型号固定是2 2。v可屏蔽的中断可屏蔽的中断由请求中断的设备提供中断类型号。由请求中断的设备提供中断类型号。2 2、形成中断类型号、形成中断类型号第第1010章章 中断与中断管理中断与中

36、断管理 v断点保护断点保护。将标志寄存器(。将标志寄存器(PSWPSW)、当前段寄存器()、当前段寄存器(CSCS)及指令指针()及指令指针(IPIP)内容压入堆栈。)内容压入堆栈。 v关闭中断,并清除关闭中断,并清除IFIF及及TFTF位(位(IF0IF0,TF0TF0),),以便以便禁止响应可屏蔽中断或单步中断。禁止响应可屏蔽中断或单步中断。v将取得的将取得的中断类型号乘中断类型号乘4 4,到中断向量表中取中断向量,到中断向量表中取中断向量(中断处理程序的入口地址),其中高(中断处理程序的入口地址),其中高2 2字节段地址送字节段地址送到到CSCS中,低中,低2 2字节偏移地址送入字节偏移

37、地址送入IPIP中。一旦中断处理程中。一旦中断处理程序的入口地址置入序的入口地址置入IPIP及及CSCS中,程序就被转入并开始执中,程序就被转入并开始执行中断处理程序。行中断处理程序。v中断服务程序一般包括:保护现场、中断服务、恢复中断服务程序一般包括:保护现场、中断服务、恢复现场等部分。同时,为了能够处理多重中断,还可在现场等部分。同时,为了能够处理多重中断,还可在中断处理程序的适当地方加入开中断指令(中断处理程序的适当地方加入开中断指令(STISTI)。)。3 3、中断处理、中断处理第第1010章章 中断与中断管理中断与中断管理 v中断服务程序执行完毕,最后执行一条中断返回指中断服务程序执

38、行完毕,最后执行一条中断返回指令令IRETIRET,将压入堆栈的原标志寄存器内容及断点地,将压入堆栈的原标志寄存器内容及断点地址弹出,继续执行原程序。址弹出,继续执行原程序。 4 4、中断返回、中断返回第第1111章章 数数/ /模与模模与模/ /数转换及应用数转换及应用 1 1、ADC0808/0809ADC0808/0809的内部结构及引脚的内部结构及引脚 v ADC0809ADC0809是是CMOSCMOS工艺制作的工艺制作的8 8位位A/DA/D转换器;转换器;v 包含有一个包含有一个8 8通道的多路模拟开关和寻址逻辑,通道的多路模拟开关和寻址逻辑,可接入可接入8 8个模拟输入电压并对

39、其进行分时转换;个模拟输入电压并对其进行分时转换;v 其数字输出部分,分辨率为其数字输出部分,分辨率为8 8位。位。v 具有三态锁存和缓冲能力,可直接与微处理器具有三态锁存和缓冲能力,可直接与微处理器的总线相连。的总线相连。v 转换时间为转换时间为200s200s,工作温度范围为,工作温度范围为40 40 +85+85,功耗为,功耗为15mw15mw,输入模拟电压范围为,输入模拟电压范围为0 05V5V,采用,采用5V5V电源供电。电源供电。第第1111章章 数数/ /模与模模与模/ /数转换及应用数转换及应用 1 1、ADC0808/0809ADC0808/0809的内部结构及引脚的内部结构

40、及引脚 (1 1) ADC0808/0809ADC0808/0809的内部结构:的内部结构: 第第1111章章 数数/ /模与模模与模/ /数转换及应用数转换及应用 (2)(2)引脚说明引脚说明IN0IN78路模拟路模拟电压输入电压输入 第第1111章章 数数/ /模与模模与模/ /数转换及应用数转换及应用 (2)(2)引脚说明引脚说明ADD3个引脚分别为:个引脚分别为:ADDA/ADDB/ADDC8路模拟电压输入路模拟电压输入的选择的选择译码后选择译码后选择8路模路模拟电压输入中的一路拟电压输入中的一路进行转换进行转换第第1111章章 数数/ /模与模模与模/ /数转换及应用数转换及应用 (

41、2)(2)引脚说明引脚说明ADDCADDBADDA模拟输入通道模拟输入通道000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7第第1111章章 数数/ /模与模模与模/ /数转换及应用数转换及应用 (2)(2)引脚说明引脚说明ALE地址锁存允许信号地址锁存允许信号控制通道选择开关控制通道选择开关的打开与闭合的打开与闭合ALE=1时接通时接通某一路的模拟某一路的模拟信号信号ALE=0时,锁时,锁存该路的模拟存该路的模拟信号信号 第第1111章章 数数/ /模与模模与模/ /数转换及应用数转换及应用 (2)(2)引脚说明引脚说明D0D78位数字量输出位数

42、字量输出 第第1111章章 数数/ /模与模模与模/ /数转换及应用数转换及应用 (2)(2)引脚说明引脚说明START转换启动信号转换启动信号宽度大于宽度大于200ns上升沿清除逐次逼上升沿清除逐次逼近寄存器近寄存器SAR下降沿启动下降沿启动ADC转换转换 第第1111章章 数数/ /模与模模与模/ /数转换及应用数转换及应用 (2)(2)引脚说明引脚说明CLOCK时钟脉冲输入时钟脉冲输入频率范围为频率范围为10KHz1MHz典型值为典型值为640KHZ第第1111章章 数数/ /模与模模与模/ /数转换及应用数转换及应用 (2)(2)引脚说明引脚说明EOC转换结束信号转换结束信号输出输出上

43、升沿有效上升沿有效第第1111章章 数数/ /模与模模与模/ /数转换及应用数转换及应用 (2)(2)引脚说明引脚说明OECPU允许输出信号允许输出信号打开三态输出锁存打开三态输出锁存器的门,把转换结果器的门,把转换结果送到数据总线上送到数据总线上 第第1111章章 数数/ /模与模模与模/ /数转换及应用数转换及应用 (2)(2)引脚说明引脚说明VREF(+) 参考电压输入参考电压输入T形电阻网络用形电阻网络用通常接通常接Vcc VREF(-) 参考电压输入参考电压输入T形电阻网络用形电阻网络用通常接地通常接地 第第1111章章 数数/ /模与模模与模/ /数转换及应用数转换及应用 2 2、ADC0809ADC0809的工作过程和时序分析的工作过程和时序分析 v 工作过程:工作过程: 由由ADDADDA A、ADDADDB B、ADDADDC C三位决定选择哪一路模拟信号;三位决定选择哪一路模拟信号; ALEALE=1=1,该路模拟信号经选择开关到达比较器的输入端。,该路模拟信号经选择开关到达比较器的输入端。 转换启动信号转换启动信号STARTSTART紧随紧随ALEALE之后(或与之后(或与ALEALE同时)出现,同时)出现,STARTSTART的上升沿将逐次逼近寄存器复位,下降沿启动的上升沿将逐次

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论