版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第五章中断技术是指CPU在正常运行程序时,由于内部/外部事件(或由程序)引起CPU中断正在运行的程序,而转到为中断事件服务的程序中去,服务完毕,再返回执行原程序,这一过程称为中断。硬件中断:由外部硬件产生的中断。软件中断:由程序预先安排的中断。中断的特征:具有随机性。第五章中断技术是指CPU在正常运行程序时,由于5.1中断的基本概念一、中断的类型
系统最多支持256种中断,这些中断分为4种类型:
外部硬件中断
非屏蔽中断
软件中断
内部中断和异常
5.1中断的基本概念1.外部硬件中断(可屏蔽中断INTR)
由外部设备(如键盘、鼠标、硬盘、打印机等)通过中断控制器用中断请求线INTR(高电平有效)向微处理器申请而产生的中断。特点:受中断标志位IF的控制,IF=1,CPU才能响应INTR中断(即INTR可以被CPU用指令CLI来禁止,由STI允许)。CPU响应INTR中断时,往INTA引脚上发两个负脉冲,外设接到第二个负脉冲后,立即往数据总线上送出中断号,供CPU读取。应用:通常用于一般外部设备的中断。1.外部硬件中断(可屏蔽中断INTR)2.非屏蔽中断NMI由系统内部硬件通过NMI(正跳变有效)向CPU申请而产生的中断。NMI的中断号由系统指定为2号。
①RAM奇偶校验错②I/O通道校验错③协处理器8087运算错NMI的特点:不受中断标志位IF影响,即不能被CPU用指令CLI来禁止,一旦出现这种请求,当前指令执行一结束,立即转移到服务程序。应用:紧急情况的故障处理。2.非屏蔽中断NMI3.软件中断由软件中断指令引起的中断。在软件中断指令中,使用最多和最广的是INTn,它在BIOS和DOS系统功能调用中提供了大量的例程。特点:是不可屏蔽的,中断号由指令给出或由系统安排。3.软件中断4.内部中断和异常由指令执行发生错误而引起的中断,这时必须启动一个处理程序以解决问题,并回复这条指令或下一条指令得执行。如单步(1)、断点(3)为内部中断,除法错误(0)、溢出错误(4)为异常。特点:是不可屏蔽的,中断号由系统安排并且是固定的。4.内部中断和异常二、中断过程
分为四个阶段
中断请求
中断响应
中断服务
中断返回二、中断过程1.中断请求①外设先发送“中断请求”信号给CPU。②CPU检查“中断请求”输入线。③CPU有权决定是否响应中断:
a.若允许申请,用开中断STI指令把中断标志IF位置1;b.若不允许申请,用关中断CLI指令把中断标志IF位置0。④没有获得允许中断请求称为中断被屏蔽。⑤不允许中断请求的情况:
如:在实时控制时,需采集一段连续数据为防止数据丢失,不允许其他中断请求;又:执行管理程序中某些重要程序,CLI指令进行屏蔽。1.中断请求2.中断响应①CPU在当前指令执行结束时,响应中断,进入中断的响应周期;②发出二个中断回答信号INTA完成一个中断响应周期;③进行断点及标志保存如:段地址(CS),偏移地址(IP)以及标志FR压入堆栈。④读取中断类型号,找到中断源;⑤装入中断服务程序的入口地址(CS,IP)2.中断响应3.中断服务①转入中断服务程序后,其服务程序的内容有:a.与CPU交换数据,进行I/O操作;b.外部期望CPU给以控制,进行参数修改。②在程序开头,将可能使用的寄存器内容进栈,即保护现场。③在服务程序的未尾,将入栈的寄存器内容弹出,即恢复现场。3.中断服务4.中断返回中断服务程序结束,执行中断返回。①自动交保存在堆栈中的标志FR,断点(IP,CS)依次弹出并装入。②回到中断前的地址开始继续执行。4.中断返回三、中断优先级
1.中断优先级
各类中断优先级从高到低的排列顺序-内部中断和异常-软件中断-NMI-INTR各类中断中又有优先级的区别如异常类中除法错优先级最高。三、中断优先级三、中断优先级
1.中断优先级
各类中断优先级从高到低的排列顺序
内部中断和异常、软件中断、NMI、INTR
各类中断中又有优先级的区别
如异常类中除法错优先级最高。
一个中断服务程序,只能被更高优先级的中断所打断。例如,如果类型50H的外部硬件中断正在处理中,那么它可以被非屏蔽中断,所有的内部中断和异常,软件中断,以及类型号小于50H的外部硬件中断所打断。也就是说,类型是大于等于50H的外部硬件中断被屏蔽。
三、中断优先级2、多重中断(中断嵌套)当CPU正在处理某个中断源,会出现优先级更高的中断源申请中断。这时,需要暂时中断(挂起)当前正在执行的级别较低的中断服务程序,去处理级别更高的中断源,待处理完后,再返回到被中断了的中断服务程序继续执行。但级别较低的或相同的的中断源不能中断级别高的中断服务,这就是所谓的中断嵌套,并且称这种中断嵌套方式为完全嵌套方式。响应1响应2返回返回主程序低级中断处理(中断源B)高级中断处理(中断源A)2、多重中断(中断嵌套)当CPU正在处理某个中断源,四、中断源、中断识别、优先级
中断源:发出中断请求的外设或引起中断的内部原因称为中断源。
中断识别:CPU响应中断后,只知道有中断请求但不知道是哪一个中断源,寻找中断源的操作过程称为中断识别。中断识别的目的:形成该中断服务程序的入口地址。四、中断源、中断识别、优先级CPU识别中断的方法二种:向量中断程序查询中断
向量中断:在CPU响应中断后,由中断控制器将服务程序入口地址送到CPU。
查询中断:采用软件查询技术来确定发出中断请求。CPU识别中断的方法五、中断处理的隐操作
CPU执行中断服务程序前后,其状态标志和程序断点的进栈和出栈,都是硬件自动完成,这些操作称隐操作。
五、中断处理的隐操作5.2中断向量与中断向量表1、中断服务程序的入口问题
中断过程的实质是程序转移的过程,即由主程序转移到服务程序去。如何获取中断服务程序的入口地址是关键。
实模式:引入中断向量及中断向量表,微处理器通过中断向量表中的中断向量获取入口地址。
保护模式:引入中断门描述符及中断描述符表IDT,微处理器通过IDT中的中断门描述符获取入口地址。5.2中断向量与中断向量表2、中断向量IV(InterruptVector)
中断向量就是中断服务程序的入口地址。CPU响应中断后,中断源提供地址信息,由此地址信息对程序的执行进行导向,引导到中断服务程序中去。中断服务程序是预先设计好并存放在程序存储区,因此中断向量包括中断服务程序的段基址CS(2B)和偏移地址IP(2B)共4个字节。2、中断向量IV(InterruptVector)3、中断向量表IVT(InterruptVectorTable)
把系统中所有的中断向量集中起来放到存储器的某一连续区域内,这个存放中断向量的存储区就叫中断向量表。PC机,从0000H~03FFH共1024B,存放256个中断向量。IP:两个低字节单元CS:两个高字节单元3、中断向量表IVT(InterruptVectorTa4、中断向量指针与中断类型号
中断向量指针:指出中断向量存放在中断向量表的位置(或地址)。
中断类型号:系统分配给每个中断源的代号。在PC系列中中断向量指针由中断类型号提供,即中断向量指针=0000:类型号×4
以中断类型号为索引,查中断向量表,取得中断向量。4、中断向量指针与中断类型号例:求硬盘“1NT13H”的中断向量中断类型号→中断向量指针→中断向量中断号:13H中断向量指针:0000:13H×4=0000:4CH中断向量:0070:0fc9h中断向量寄存器中断向量指针C90F7000IPLIPHCSLCSH004CH004DH004EH004FH中断向量指针示意图例:求硬盘“1NT13H”的中断向量中断向量寄存器中断向量5、16位处理器的中断号分配INTR中断源5、16位处理器的中断号分配INTR5.3中断描述符与中断描述符表1、中断描述符
在保护模式下,由于存放中断服务程序的程序存储区地址是虚拟地址,用段描述符加偏移量表示。因此,中断服务程序的入口地址,有以下两部分组成:(1)服务程序的段描述符(8B)(2)服务程序的偏移量(4B)采用中断门描述符来指向中断服务程序的入口地址。5.3中断描述符与中断描述符表1、中断描述符2、中断描述符表IDT
是一个存放门(中断门、陷阱门或任务门)描述符的存储区。“门”的含义是当中断发生时必须先通过这些门,然后才能进入相应的处理程序。
IDT可以驻留在物理地址空间的任何地方,处理器使用IDTR寄存器来定位IDT的位置。一个门描述符8字节长,IDT最多包含256个门描述符。基址字段边界字段主存门描述符1门描述符2门描述符N015031IDTRIDT2、中断描述符表IDT基址字段
3、门描述符的格式
每一个门描述符都分配有一个门号。
中断门描述符地址=中断门号*8+IDT基地址3、门描述符的格式
每一个门描述符都分配有一个门
4、服务程序的入口地址的形成
要获得服务程序的入口地址必须经过两关:(1)利用中断门号在IDT里找中断门描述符;(2)利用门描述符里给出的选择子,在GDT或LDT里找到服务程序的段描述符,从中获得服务程序的段基址,再加上中断门描述符里给出的偏移量形成服务程序的入口地址。4、服务程序的入口地址的形成
5、32位处理器的中断号分配5、32位处理器的中断号分配5.4中断控制器中断系统的管理:采用8259A中断控制器协助CPU进行中断处理。一个8259可管理8级向量中断,2个8259为15级向量。NMIINTR中断逻辑INTn溢出中断除法错单步中断非屏蔽中断请求中断控制器8259A断点中断n43012可屏蔽中断请求CPUPC机中断系统5.4中断控制器中断系统的管理:NMIINTR中断INT中断控制器的主要任务1.优先级排队管理根据任务轻重缓急或设备的特殊要求,分配中断源的中断源等级。2.接受外部设备的中断请求经过优先权判决找到哪一个中断源的中断请求级别最高,然后,再向CPU提出中断申请INT。3.提供中断类型号为CPU实现程序的转移给出中断服务程序入口地址指针。中断控制器的主要任务一、8259A的外部特性和内部结构数据总线缓冲器读/写控制逻辑级联缓冲/比较器控制逻辑正在服务寄存器ISR优先级分析器PR中断请求寄存器IRR中断屏蔽寄存器IMRIR0IR1IR2IR3IR4IR5IR6IR7D0~D7INTA0CAS0CAS1CAS2SP/ENCSWRRD内部逻辑框图INTA一、8259A的外部特性和内部结构数据总线读/写级联控制逻辑1、外部特性
引脚有3组信号线,与其他外围芯片(2组)不同。(1)面向CPU的信号线
数据线D0~D7中断请求线INT中断应答线INTAWR、RD控制线地址线CS、A0(2)面向外设的信号线
8根中断申请线IR0~IR7(3)面向同类芯片的中断级联信号线
级联线CAS0~CAS2主从芯片的设定线SP/EN1、外部特性2、内部寄存器(1)中断请求寄存器(IRR)它存放在IR线上提出了中断请求的中断源,该寄存器8位(D0~D7)对应于连接在IR0‾IR7线上的外设所产生的中断请求,哪一根输入线有请求,哪位就置“1”。具有锁存功能,其内容可用OCW3命令读出。2、内部寄存器(2)中断屏蔽寄存器(IMR)是对中断请求IR起屏蔽作用,即对中断请求IR是禁止还是允许,寄存器8位对应8级中断屏蔽。哪一级中断被屏蔽,哪位就写“1”,即禁止IR提出中断请求。其内容可用OCW1命令写入,该寄存器命令不可读。Di=0开中断1关中断(2)中断屏蔽寄存器(IMR)Di=0开中断1关(3)正在服务寄存器ISR在中断响应之后,第一个获准中断请求的中断级在相应的ISR中置位。如IR3获准,ISR中的IS3置位,表明IR3正处于服务。
其内容可用OCW3命令读出。(3)正在服务寄存器ISR(4)优先权分析器(PR)这是中断请求的判优电路,当在IR输入端有中断产生时,送到PR,PR检查进来的中断请求的优先级并和“正在服务中的中断”进行比较,确定是否让这个中断请求送给处理器。过程如下:由8个“与”门逻辑选出参加中断优先级排队的中断请求级,即由8位IRR与8位IMR分别送入“与”门输入端,只有当IRR位置“1”和IMR位置“0”(开放中断请求)同时成立时,相应“与”门输出才为高电平,并送到优先级编码器的输入端参加编码。(4)优先权分析器(PR)中断屏蔽寄存器IMRD0D1D2D3D4D5D6D7中断请求寄存器IRR
&
&
中断请求优先级编码器≥1ISR编码器A>B比较器B0B1B2A0A1A2&INTIR0IR1IR2IR3IR4IR5IR6IR7中断优先级分析器的工作原理中断屏蔽寄存器IMRD0D1D2D3D4D5D6D7中&3、数据总线缓冲器
是8259A与系统数据总线的接口,它是8位的双向三态缓冲器。4、读/写控制逻辑CPU能通过它实现对8259A的读出(状态信号)和写入(初始化编程)。5、级连缓冲器实现8259A芯片之间的级连,使得中断源可由8级扩展至64级。6、控制逻辑对芯片内部的工作进行控制,使它按编程的规定工作。3、数据总线缓冲器二、中断响应周期
中断响应需要两个机器周期。当:①CPU收到INT中断请求②前一条指令执行完,且中断标志位IF=1那么:CPU进入中断响应周期,它通过总线控制器发出二个连续中断应答信号完成一个中断响应周期。
二、中断响应周期在中断响应周期两个工作:1.第一个INTA脉冲时,CPU产生LOCK信号,使总线处于封锁状态,防止DMA占用总线。2.第二个INTA时,LOCK撤除,总线解封。外设接到第二个负脉冲后,立即往数据总线上送出中断类型码,供CPU读取。T1T2T3T4T1T2T3T4中断号CLK(时钟)ALE(地址允许)LOCK(总线锁存)INTA(中断应答)D0~D7(数据)中断响应周期INTA1INTA2在中断响应周期两个工作:T1T2T3T4T1T2T3T4中断三、8259A的工作方式
8259A提供了多种工作方式,这些工作方式使8259A的使用范围大大增加。其中,有些方式是经常使用的,有些方式很少用到,对常用的工作方式要重点加以注意。8259A工作方式中断触发方式电平触发方式边沿触发方式中断结束方式自动EOI方式非自动EOI方式普通结束命令特殊结束命令中断优先级排队方式特殊完全嵌套方式完全嵌套方式优先级轮换方式普通EOI循环方式特殊EOI循环方式自动EOI循环方式中断屏蔽方式普通屏蔽方式特殊屏蔽方式总线连接方式缓冲方式非缓冲方式三、8259A的工作方式8259A提供了多种工作
实际上是中断请求的启动方式,即表示有/无外设申请中断的方式。有两种中断请求的启动方式。
(1)电平触发方式。IR0~IR7输入线出现高电平时,表示有中断请求。
(2)边沿触发方式。IR0~IR7输入线出现由低电平到高电平的跳变,表示有中断请求。
利用初始化命令字ICW1来设置。
1、中断触发方式实际上是中断请求的启动方式,即表示有/无外设申请中断结束的实质是使ISR中被置1的位清零,及撤销该位相应的中断级。8259A提供了自动和非自动结束两种方式。
⑴自动EOI方式中断处理结束时自动将ISR中相应位清零,因此,在中断服务程序中,根本就不需要向8259A发中断结束命令EOI,去清零置1的位。此方式较少使用。只需将初始化命令字ICW4中的AEOI置为1即可。2、中断结束(EOI)方式中断结束的实质是使ISR中被置1的位清零,及撤销该位相⑵非自动EOI方式这是ISR中被置1的位,在服务完毕后,不能自动清零,而必须在中断服务程序中,向8259A发中断结束命令EOI,才能清零。此方式是常用的方式,其中又有两种命令格式。普通结束命令
使ISR中优先级最高的置1位清零。在命令代码中,并不指明是哪一级中断结束,而是隐含地暗示使最高优先级结束。用操作命令字OCW2中的EOI=1,SL=0,R=0的设置来实现(即命令代码为20H)。此命令只用于完全嵌套方式。特殊结束命令该命令明确指定ISR中哪一个置1的位清零,即服务完毕,具体指定哪一级中断结束。用操作命令字OCW2中的EOI=1,SL=1,R=0的设置来实现,此时OCW2中的L2、L1、L0这3位指出了到底要清除ISR中的哪一位。(即命令代码为6XH,X=0~7,表示与IR0~IR7相对应的8级中断)。此命令可用于各种中断优先级排队方式。⑵非自动EOI方式3、中断优先级排队方式8259A提供了3中优先级排队方式:完全嵌套方式、特殊完全嵌套方式、优先级轮换方式。其中,最常用的是完全嵌套方式,后两种很少使用。3、中断优先级排队方式⑴完全嵌套方式是8259A初始化后自动进入的基本工作方式。此时优先级从IR0到IR7依次降低。当某一中断处理时,可响应比它高的中断,但禁止比它低的或同级中断进入。当某一中断请求处理结束时,CPU向8259A发送中断结束命令EOI,以使ISR中相应位清零。⑴完全嵌套方式⑵特殊完全嵌套方式与⑴的普通全嵌套方式差不多,区别是CPU处理某一中断时,允许比它高的和与它同级的中断请求进入,而只禁止比它低的中断请求。⑵特殊完全嵌套方式普通EOI循环方式在这种方式下,任何一级中断请求被处理完后,CPU向8259A发送中断结束命令EOI,以使ISR中优先级最高的置1位清零,并重新赋给它最低优先级,而将最高优先级赋给比它低一级的中断请求,其它中断请求的优先级则以循环方式类推。
(3)优先级轮换方式普通EOI循环方式(3)优先级轮换方式例:普通EOI循环方式举例
某系统中原来定义的是IR0为最高级,IR7为最低级,当前正在处理IR2和IR6引入的中断请求,因此ISR寄存器中第2位和第6位置1,待第2级中断处理完,CPU向8259A发回普通EOI命令,ISR中级别高的第2位清0,并将优先级由原定义的第2级改为最低级(第7级),而将最高级(第0级)赋给原来的第3级(IR3),其它级的优先权按循环方式依次改变级别。待第6级中断处理完后也如此处理。例:普通EOI循环方式举例某系统中原来定义的是特殊EOI循环方式用户根据要求用置优先级命令指定最低优先级,例如设置IRi为最低优先级,则最高优先级为IRi+1,其它各级按循环方式类推。特殊EOI循环方式
例:特殊EOI循环方式举例当前正在处理第2级和第6级中断,它们以嵌套方式引入系统。如果当前CPU正在执行优先级高的第2级中断服务程序,用户在该中断服务程序中安排了一条优先权置位命令,将最低级优先权赋给IR4,那么待这条指令执行完,各中断源的优先级便发生变化,IR4具有最低优先级,但这时第2级中断服务程序并没有结束,因此ISR寄存器中仍保持第2位和第6位置1,只是它们的优先级别已经分别被改变为第5级和第1级例:特殊EOI循环方式举例当前正在处理第2
4、中断屏蔽方式
是指对外设中断申请的屏蔽,即允许还是不允许申请中断,而不是对已经提出的中断申请响不响应的问题。有两种屏蔽方式。
⑴普通屏蔽方式这是通过8259A屏蔽寄存器写入8位屏蔽码来屏蔽或开放中断申请线的中断申请。将IMR中某一位或几位置1,则其对应的中断被屏蔽(即被禁止)。这是最常用的屏蔽方式。4、中断屏蔽方式⑵特殊屏蔽方式用于开放低级别的中断申请。允许比正在服务的中断级别低的中断申请,仅屏蔽同级的中断再次申请中断,可以响应高级或低级中断。这种方式很少采用。通过操作命令字OCW3中的ESMM和SMM同时置为1,并将IMR对应于本级中断的位置1来实现。⑵特殊屏蔽方式
5、中断级联方式
可以单片使用,也可以多片使用,两片以上使用时就存在级联问题。级联问题分两个方面:从主片看,他的那一根或那几根中断申请输入线IR有从片连接;从从片看,他的中断申请输出线INT与主片的哪一根中断申请输入线IR相连。利用命令字ICW3来设定。5、中断级联方式四、8259A的中断操作的功能及其命令中断操作功能①请求②屏蔽③排队④结束⑤级联⑥中断类型号⑦查询下面讨论为实现这些功能的各个命令字的含义,为编程使用8259A提供一些思路。四、8259A的中断操作的功能及其命令1.中断请求触发方式的设定(ICW1)功能:设定中断请求的触发方式,是电平触发还是边沿触发。ICW1的格式:例.若8259A采用边沿触发,单片使用,需要ICW4,则MOVAL,00010011B;ICW1的内容OUT20H,AL;写入ICW1端口(A0=0)
ICW10A00001LTIMADISNGLIC416位无效特征位触发方式=1,电平=0,边沿无效单片使用需要ICW4D7D6D5D4D3D2D1D01.中断请求触发方式的设定(ICW1)例.若8259A采用边2.中断类型号的设定(ICW2)功能:提供给CPU的中断类型号.A0ICW21T7T6T5T4T3000中断类型号的高5位8259AIR0-7提供D7D6D5D4D3D2D1D0
如:硬盘中断号:0DH即00001101
00001000
注意:向ICW2写入中断类型号只写高5位,低3位写0,即08H,MOVAL,08HOUT21H,AL;写入ICW2的端口(A0=1)2.中断类型号的设定(ICW2)A0ICW21T7T6T5T3.中断级联方式的设定(ICW3)(1)级联的结构例:有三个8259A采用主从级联方式,指出优先级排序.
3.中断级联方式的设定(ICW3)优先级次序为:
IR0,1,2,8‾15,4,5,16‾23,7IR15
…IR8IR23
…IR16IR7
…IR0地址总线控制总线数据总线8259A从片AINTCSINTAA0CAS0CAS1CAS2IR0IR7SP/EN…8259A从片AINTCSINTAA0CAS0CAS1CAS2IR0IR7SP/EN…8259A主片AINTCSINTAA0CAS0CAS1CAS2IR0IR7SP/EN
…VCCGNDGND中断申请(输出)非缓冲方式主从级联优先级次序为:IR0,1,2,8‾15,4,(2)ICW3的格式:
a.主片ICW3主片ICW31S7S6S5S4S3S2S1S0A0D7D6D5D4D3D2D1D0Si=1,联接从控,Si=0,末联接从控;例:上图;IR3,IR6,联接从控,则ICW3=01001000B(48H)MOVAL,48HOUT21H,AL(2)ICW3的格式:主片ICW31S7S6S5S4S3S2
ID2‾ID0有8种编码,表示从控INT接到主控的哪一个IR位,如:从控A的ICW3=00000011B=03H从控B的ICW3=00000110B=06H例如;MOVAL,03HOUT0A1H,AL;从片的地址由译码决定从片ICW3A0D7D6D5D4D3D2D1D01×××××ID2ID1ID0b.从片ICW3:ID2‾ID0有8种编码,表示从控INT4.特殊完全嵌套方式的设定(ICW4)问题的提出:在级联方式中,当从控接收到比“正在服务”中的那一个优先等级更高的中断申请时,就不会被主控识别,就是说,从控的较高优先级的中断就不能被及时服务。为了解决这个问题,8259提供了一种特殊的完全嵌套方式。如果在主控中采用这种方式,那么当从控收到一个更高的中断请求时,它是会被主控识别的。这种全嵌套方式是在初始化时由ICW4指定的。
4.特殊完全嵌套方式的设定(ICW4)ICW4格式:D4=1为主控为特殊完全嵌套=0全嵌套D3=1为缓冲方式,SP/EN作输出线=0为非缓冲方式,SP/EN作输入线ICW41000SFNMBUFM/SAEOI
PMA0D7D6D5D4D3D2D1D0D0=1用于8088/8086=0用于8080/8085D2=1为缓冲方式下8259A作主控=0为缓冲方式下8259A作从控D1=1自动结束方式,ISR有自动复位功能=0为非自动ICW4格式:D4=1为主控为特殊完全嵌套ICW41000例.PC/XT机,CPU为8088,8259与系统为缓冲的连接,非自动结束方式,只用1片8259A,全嵌套。ICW4=00001101B=0DHMOVAL,0DHOUT21H,AL例.PC/XT机,CPU为8088,8259与系统为缓冲的B0~7TA0~78286OEB0~7TA0~78286OEB0~7TA0~78286OED0~7CAS0~2从片ASP/ENINTAINTD0~7CAS0~2从片BSP/ENTITAINTD0~7CAS0~2主片SP/ENINTAIR5IR6+5V1k+5V1k+5V1k数据总线数据总线局部数据总线DENDT/RINTRINTINTA缓冲方式级联系统数据总线数据驱动器B0~7TA0~78286OEB0~7TA0~78286OE
注意:①在缓冲的方式下(8286)SP/EN作输出线,控制的数据传送方式。②8259是主控制还是从控由ICW4的M/S(D2)位决定,(通过编程决定)。
(1)缓冲器方式下级联的设定(ICW4)注意:(1)缓冲器方式下级联的设定(ICW4)例2.PT86单板机,CPU为8086,采用非自动结束方式,使用2片8259A,非缓冲方式,采用特殊全嵌套方式,其ICW4=00010101B=15H若将它写入ICW4的端口,MOVDX,0FFDEHMOVAL,15HOUTDX,AL例2.小结
8259的编程命令有二类:1.初始化命令字ICW1~ICW4ICW1,ICW2,ICW3,ICW4放在初始化程序的开头,对8259进行初始化次序为:小结2.操作命令字(OCW)
OCW1,OCW2,OCW3初始化后,即在程序执行中,使用OCW命令对中断控制器进行动态控制。不需要按顺序发送,在程序中任意安排。2.操作命令字(OCW)(1)中断屏蔽操作命令字(OCW1)直接写入中断屏蔽寄存器IMR,可以屏蔽一个或多个的中断请求。M0-M7对应IR0-IR7,其中Mi位=1,则该IRi位屏蔽,即IRi线上的中断不被接收。A0D7D6D5D4D3D2D1D01M7M6M5M4M3M2M1M0例要使中断源IR3开放,其余被屏蔽,则
OCW1=11110111B=F7HMOVAL,F7HOUT21H,ALOCW1内容送端口INAL,21H回读21H端口的内容(1)中断屏蔽操作命令字(OCW1)A0D7D6D5D4D3⑵OCW2
用于设置优先级循环方式和中断结束方式。A0D7D6D5D4D3D2D1D00RSLEOI00L2L1L0=1表示L2L1L0有效=0表示这三位无效OCW2的标志位优先级排队控制=1循环方式优先级=0为非循环方式,即优先级固定中断结束命令位=1非自动=0自动在SL=1时,配合R,SL,EOI的设置,用来确定一个中断优先级的编码。L2、L1、L0的8种编码000-111分别与IR0-IR7对应。⑵OCW2A0D7D6D5D4D3D2D1D00RSLEO作中断结束控制当在初始化命令ICW4选用非自动结束方式时,就利用OCW2来控制中断结束。即:OCW2格式中的D5(EOI)=1
EOI=1,SL=0,R=0:普通EOI方式
OCW2=01100000EOI=1,SL=1,R=0:特殊EOI方式OCW2=01100L2L1L0
(L2~L0指出了到底要清除ISR中的哪一位
)例:指定IR5为中断结束,则OCW2=01100101B=65H。作中断结束控制作中断优先级排队控制D7(R)1:需要轮换优先权,分二种若SL0:优先级固定方式(完全嵌套方式)=1:优先权指定轮换=0:自动轮换
注意:中断结束方式和中断排队方式都用OCW2命令来实现,因此,它的某些位功能重选相互交叉显然比较复杂,但其作用只有两个:①控制中断结束方式②中断优先权轮换方式的控制作中断优先级排队控制D71:需要轮换优先权,分二种若SL0:由R,SL,EOI三位可以定义多种不同的中断结束命令或优先级循环方式。
由R,SL,EOI三位可以定义多种不同的中断结束命⑶OCW3(A0=0,偶地址端口)功能①用来设置查询中断式②设置特定屏蔽方式③读取8259A的IRR,ISR寄存器的内容格式
A0D7D6D5D4D3D2D1D00×ESMMSMM01PRRRIS其中D4、D3=01是OCW3的标志位。ESMM是特殊屏蔽方式允许位,SMM是特殊屏蔽方式位。ESMMSMM 功能0 ×无效10特殊屏蔽方式复位11特殊屏蔽方式置位⑶OCW3(A0=0,偶地址端口)A0D7D6D5D
P,查询标志,=1查询8259A状态=0不查询
当P=1时,查询当前是否有中断请求,以及在有中断时,当前正在请求的中断最高优先级是哪一级。查询的中断状态字(偶地址)格式如下:IR=0,无中断请求,=1有中断请求;W2、W1、W0表示当前正在请求的中断IRi是最高优先级,W2、W1、W0的编码是000-111对应IR0-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 肺炎状况课件教学课件
- 2024年度产品代理合同与物业费详细构成
- 课件腕关节教学课件
- 2024年乙方向甲方购买设备的购销合同
- 2024年建筑信息模型(BIM)合作协议
- 2024年住宅买卖双方合同
- 2024年度4S店租赁期内客户资料保密协议
- 2024私人购土地合同范本
- 制备氧气课件教学课件
- 2024广州房屋租赁合同范本2
- 【幼儿园语言文字教学的规范化分析3000字(论文)】
- 瓶口分液器校准规范
- (完整版)医疗器械网络交易服务第三方平台质量管理文件
- 信息管理监理实施细则水利水电工程
- (医学课件)DIC患者的护理
- 跨境数据流动的全球治理进展、趋势与中国路径
- 【多旋翼无人机的组装与调试5600字(论文)】
- 2023年辽阳市宏伟区事业单位考试真题
- 环境工程专业英语 课件
- 继电保护动作分析报告课件
- 五年级数学上册8解方程课件
评论
0/150
提交评论