第五章输入输出和中断_第1页
第五章输入输出和中断_第2页
第五章输入输出和中断_第3页
第五章输入输出和中断_第4页
第五章输入输出和中断_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

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

文档简介

1、1微机原理与接口技术 第五章第五章输入输入/输出和中断技术输出和中断技术25.1 输入输入/输出系统概述输出系统概述一、I/O系统的特点二、I/O接口的基本功能三、I/O端口的编址方法四、I/O端口地址的译码5.2 简单接口电路简单接口电路一、接口电路的基本构成二、三态门接口三、锁存器接口四、简单接口应用举例35.3 基本输入基本输入/输出方式输出方式一、无条件传送方式二、查询方式三、中断方式四、直接存储器存取(DMA)方式5.4 中断技术中断技术一、中断基本概念二、中断处理的一般过程三、8086/8088的中断系统5.5 8259A可编程中断控制器可编程中断控制器 45.5 8259A可编程

2、中断控制器可编程中断控制器 一、 8259A的结构二、8259A的工作过程二、8259A的工作方式二、8259A的工作初始化编程五、中断服务程序设计概述5I/O系统通常包括I/O设备,I/O接口和I/O软件一、I/O系统的特点复杂性: 输入输出设备的复杂性;处理器本身和操作系统产生的一系列随机事件也要调用输入/输出系统进行处理,比如中断等异步性:外设与CPU时序的不一致实时性:CPU能为外设提供及时的服务与设备无关性:CPU与外设之间不直接互连,而是通过I/O接口互连。CPU通过通过软件和IO接口管理各种外设5.1 输入输入/输出系统概述输出系统概述61、I/O接口要解决的问题速度匹配问题信号

3、电平和驱动能力问题信号形式匹配问题信息格式问题时序匹配问题2、 I/O接口功能I/O地址译码和设备选择信息的输入输出命令、数据和状态的缓冲与锁存信息格式转换二、I/O接口的基本功能三、I/O端口的编址方法1、 I/O端口独立编址优点: I/O端口地址不占用存储器空间,有专门的I/O指令,使程序清晰易读且控制和译码电路简单缺点:访问端口的手段相对较少2、 I/O端口与内存单元统一编址(存储器映像方式)优点:端口寻址手段丰富,有利于输入输出程序设计缺点:在程序中不易分清存储器和端口;减少了内存可用的地址范围788088CPU使用了地址总线的低16位(A0A15)寻址端口,译码方法与内存类似当CPU

4、工作于最大模式时,对存储器的读写要求#MEMR和#MEMW有效,对I/O端口的读写要求#IOR和#IOW有效四、I/O端口地址的译码5.2 简单接口电路简单接口电路一、接口电路的基本构成9CPUI/O接口电路外设数据信号地址信号控制信号I/O接口的典型结构数据信号控制信号状态信号二、三态门接口74LS244由8个三态门构成。两个控制端#E1和#E2分别控制4个三态门。控制端有效时(低电平)对应的三态门导通,否则三态门呈高阻态。74LS244通常用作输入接口和输出驱动通常用作输入接口和输出驱动10I0D0D7I1I2I3#E1 I4#E2I5I6I7&A2A3A4A5A6A7A8A9A1

5、51A10A11A12A13A141#IORD0D7+5VK0K1K2K3K4K5K6K774LS244地址空间:地址空间:83FCH83FFH例如:编写程序段,若开关全部闭合,程序转向NXT1,否则转向NXT2MOV DX, 83FCHIN AL, DXAND AL,0FFHJZ NXT1JMP NXT2三、锁存器接口三态门器件三态门器件不具备数据的保存(或称锁存)能力,而很多信源都要求能够将信号保持住,直至被CPU读走,所以它一般只用作输入接口,而不能直接用作一般只用作输入接口,而不能直接用作输出接口。输出接口。数据输出接口通常采用具有信息存储能力的器件来实数据输出接口通常采用具有信息存储

6、能力的器件来实现,现,比如D触发器。(74LS273:8路锁存器)1213#MRCPDiQi011XX0100174LS273CP:时钟输入D0D7:数据输入#MR: 复位输入Q0Q7:寄存器输出真值表14地址空间:地址空间:0FFFFHD0D7Q0Q1Q2CPQ3Q4Q5Q6Q7&A0A1A2A3A4A5A6A7& A8A9A10A11A12A13A14A151#IOWD0D774LS273+5V1+5V1例如:编写程序段,使接到Q0和Q6的LED灯亮,其他灭MOV DX, 0FFFFHMOV AL, 01000001BOUT DX, AL74LS273是二态门输出,因此它无

7、法直接用作输入接是二态门输出,因此它无法直接用作输入接口,即它的口,即它的Qi端绝对不允许直接与系统的数据总线端绝对不允许直接与系统的数据总线相连。相连。74LS373,74LS374:带有三态输出的锁存器:带有三态输出的锁存器1516#OECPDiQi100XX01高阻0174LS374CP:时钟输入D0D7:数据输入#OE: 输出允许输入Q0Q7:寄存器输出真值表#OE1774LS374作输出口:作输出口:0FFF8HD0D7Q0Q1CPQ6Q7#OE&A3A4A5A6A7& A8A9A10A11A12A13A14A151#IOWD0D774LS374A0A1A2174LS

8、374作输入口作输入口D0D7Q0Q1#OEQ6Q7CP译码电路#IOWD0D774LS374A0A15外设数据外设提供选通脉冲四、简单接口应用举例1、LED数码管181 2 4 5 6 7 8 10e d c DP b a f g39abcdefgDP1 2 3 4 510 9 8 7 6共阳极LED数码管2、应用与连接191111#G2BG#G2ACBAA2A1A0#Y01#IOR#Y1D0D7Q0Q1Q2CPQ3Q4Q5Q6Q7&A3A4A5A6A71A8A9A10A11A12A13A14A151#IOWD0D774LS273+5V7406K10k 5108D0输入端口地址:输入

9、端口地址:F1H输出端口地址:输出端口地址:F0H编写程序段,当开关K闭合时,LED数码管显示“0”,当开关K断开时,LED数码管显示“1”,FOREVER: IN AL, 0F1H; 读入开关状态TEST AL, 1; 判断开关状态MOV AL, 3FH; 显示0JZ DISPMOV AL, 6; 显示1DISP:OUT 0F0H, AL; 输出显示JMP FOREVER205.3 基本输入基本输入/输出方式输出方式一、无条件传送方式用于LED数码管,按键或按钮等简单设备,它们一直处于“就绪”状态。即对输入设备,已准备好送数据给CPU,对输出设备,已准备好从CPU接收数据。例如上节的内容21

10、22在实际应用时,大部分外设并不总是处于“准备好”状态。对于这类外设,CPU在数据传输前必须要先查询一下外设的状态:若外设准备好才传输数据,否则CPU要等待,直到外设准备好。二、查询方式取外设状态传送数据外设准备就绪否?传送完否?YNYN开始查询传输流程图查询传输流程图三、中断方式无条件传送和查询传送都由CPU管理外设,在管理过程中CPU不能做别的事,这对具有多外设且实时性要求较强的计算机控制系统是不合适的。中断:CPU不主动介入外设的数据传输工作,而是由外设在需要进行数据传送时向CPU发出中断请求,CPU在接到请求后若条件允许,则暂停正在进行的工作而转去对该外设服务,并在服务结束后回到原来被

11、中断的地方继续原来的工作。中断传送可以大大提高CPU的效率,并对外设实时响应2324中断传送的缺点:中断传送的缺点:8088CPU传输一个字节通常需要约传输一个字节通常需要约几十到几百几十到几百us与其他两种方式一样,中断的数据传送过程需要CPU执行程序来实现,即首先将数据从内存(或外设)读到累加器,在写入到接口(或内存)中。(因此前面三种方式被统称为程序控制输入/输出方式。)采用中断方式每进行一次数据传输,都需要保护断点、保护现场等修改内存地址、判断数据块是否传输完毕这种速度对于一些高速外设及批量数据交换(比如磁这种速度对于一些高速外设及批量数据交换(比如磁盘与内存的数据交换)不能满足要求,

12、而盘与内存的数据交换)不能满足要求,而DMA传送传送可以满足可以满足四、直接存储器存取(DMA)方式25DMA传送通过特殊的硬件电路来控制存储器与外设直接进行数据交换。此时,CPU放弃对总线的管理,而由DMA控制器(DMAC)实施对总线的管理。存储器CPUDMA控制器外设HLDADMAACKDRQHOLDDMA传送示意图DMA传送过程:传送过程:1)若外设有传送要求,其向DMAC发出DMA传送请求信号DRQ2)DMAC收到请求后,向CPU发出总线请求信号HOLD,表示希望占用总线26存储器CPUDMA控制器外设HLDADACKDMAREQHOLDDMA传送示意图3)CPU在完成当前总线周期后立

13、即对HOLD信号响应:一方面CPU将数据总线、地址总线和相应的控制信号线均置为高阻态,放弃对总线的控制权;另一方面,CPU向DMAC发出总线响应信号HLDA4)DMAC收到HLDA后接管对总线的控制,并向外设发出DMA响应信号DACK275)DMAC送出地址信号和相应的控制信号,实现外设与内存或内存与内存之间的直接数据传送。比如,DMAC向外设送I/O地址、#IOR和AEN信号,同时向存储器送存储单元地址和#MEMW信号,即可从外设向内存传送一个字节6)DMAC自动修改地址和字节计数器,并据此判断任务是否完成,如果传送尚未完成,它会重复5)继续传送;若传送完成,它将使HOLD信号无效,通知传送

14、结束。CPU检测到HOLD失效后,紧接着撤销HDLA信号,并在下一时钟周期重新开始控制总线,继续执行原来的程序DMA传送注意事项传送注意事项DMA传送前,CPU必须告诉DMAC传送是在哪两个部件之间进行的,以及传送的内存首地址以及字节数是多少在DMA传送时,DMAC只负责送出地址及控制信号,而数据传送是直接在接口和内存间进行的,并不经过DMAC。对于内存与内存间的DMA传送,是先用一个DMA的存储器读周期将数据由内存读出,放在DMAC的内部数据暂存器中,再利用一个DMA的存储器写周期将该数据写到内存的另一区域285.4 中断技术中断技术一、中断基本概念一、中断基本概念中断中断:CPU在程序运行

15、过程中,被内部或外部的事件所打断,转去执行一段预先安排好的中断服务程序;服务结束后,又返回原来的断点,继续执行原来的程序。中断源中断源:引起中断的事件或原因。包括内部中断源:内部中断源:除0,溢出,断点,单步操作,存储器越界,缺页,INT n指令等。内部中断的控制完全在内部中断的控制完全在CPU内部实内部实现现外部中断源:外部中断源:键盘,鼠标、打印机,磁盘,数据采集装置,网络,实时钟,故障(掉电、 硬件错,存储器奇偶校验错)等。外部中断利用外部中断利用CPU的的INTR(可屏蔽中断请求线可屏蔽中断请求线)和和NMI (不可屏蔽中断请求线不可屏蔽中断请求线)来告诉来告诉CPU已发生了中断已发生

16、了中断请求请求29一个完整的中断处一个完整的中断处理过程应包括:理过程应包括:中断请求中断请求中断判优中断判优中断响应中断响应中断服务中断服务中断返回中断返回中中断断服服务务程程序序原程序原程序中断请求中断请求二、中断处理的一般过程二、中断处理的一般过程1、中断请求、中断请求外设需要外设需要CPU服务时,首先要发出一个有效的中断请服务时,首先要发出一个有效的中断请求信号送到求信号送到CPU的中断输入端。的中断输入端。中断请求信号包括:中断请求信号包括:沿触发:沿触发:CPU根据中断请求端有无上升沿或下降沿来决定中断请求信号是否有效。一般用于CPU能及时响应的中断请求,比如8086/8088CP

17、U的NMI电平触发电平触发:CPU根据中断请求端有无稳定的电平信号(高电平或低电平)来决定中断请求信号是否有效。一般用于CPU不能及时响应的中断请求,比如8086/8088CPU的INTR312、中断判优、中断判优当有多个中断请求时,当有多个中断请求时,CPU识别其优先权并按优先权处理,识别其优先权并按优先权处理, 同同时实现中断嵌套功能。时实现中断嵌套功能。1)软件判优)软件判优并行接口2)硬件判优)硬件判优u中断控制器(见中断控制器(见6.5)u菊花链法菊花链法菊花链法菊花链法当链上任何一个接口有中断请求时,都会产生中断请当链上任何一个接口有中断请求时,都会产生中断请求信号送往求信号送往C

18、PU的的INTR引脚。如果引脚。如果CPU允许中断,则允许中断,则发出中断响应信号发出中断响应信号 ,该信号在菊花链中传递。如果某,该信号在菊花链中传递。如果某接口中无中断请求信号,则接口中无中断请求信号,则 信号可以通过该接口的菊信号可以通过该接口的菊花链逻辑电路原封不动地向后传递;如果该接口中有花链逻辑电路原封不动地向后传递;如果该接口中有中断请求信号,则该接口中的逻辑电路就使得中断请求信号,则该接口中的逻辑电路就使得 信号不信号不再向后传递。这样,再向后传递。这样,CPU发出的发出的 信号可以从最靠近信号可以从最靠近CPU的接口开始沿着菊花链逐级向后传递,直至被一的接口开始沿着菊花链逐级

19、向后传递,直至被一个有中断请求信号的接口封锁为止。显然,在有多个个有中断请求信号的接口封锁为止。显然,在有多个中断请求同时发生时,最靠近中断请求同时发生时,最靠近CPU的接口最先得到中的接口最先得到中断响应,所以它的优先权最高,离断响应,所以它的优先权最高,离CPU越远的接口,越远的接口,其优先权就越低。其优先权就越低。菊花链法菊花链法当某接口有中断请求且收到了当某接口有中断请求且收到了CPU的中断响应信号,的中断响应信号,该接口一方面清除它的中断请求,同时把它的中断该接口一方面清除它的中断请求,同时把它的中断类型号送上数据总线。类型号送上数据总线。CPU接收到该中断类型号就接收到该中断类型号

20、就执行与它对应的中断服务程序。因优先权较低申请执行与它对应的中断服务程序。因优先权较低申请了中断而未接收到的接口将保持中断请求信号。了中断而未接收到的接口将保持中断请求信号。CPU处理完高一级的中断,开中断返回后,再来响应处理完高一级的中断,开中断返回后,再来响应这个接口的中断请求。这个接口的中断请求。353、中断响应、中断响应u对可屏蔽中断请求对可屏蔽中断请求,CPU向中断源发出中断响应信向中断源发出中断响应信号,并同时完成下面的工作;号,并同时完成下面的工作;u对不可屏蔽中断请求对不可屏蔽中断请求,CPU直接完成下面的工作直接完成下面的工作u保护硬件现场,即将保护硬件现场,即将FLAGS入

21、栈入栈u保护断点,即将保护断点,即将CS和和IP的值入栈的值入栈u获得并跳转至中断服务程序入口获得并跳转至中断服务程序入口364 4、中断服务、中断服务保护软件现场:把中断服务程序中要用到的寄存器的内容入栈保持开中断:允许嵌套中断服务关中断恢复现场:恢复寄存器内容5、中断返回、中断返回三、三、8086/80888086/8088的中断系统的中断系统388086/8088CPU内部逻辑中断控制逻辑INT n指令中断INTO中断(4号)断点中断(3号)除法错中断(0号)单步中断(1号)非屏蔽中断请求非屏蔽中断请求(上升沿触发上升沿触发)NMI(2号)可屏蔽可屏蔽中断请中断请求求(高电高电平触发平触

22、发) )INTR中断控制器8259A内部中断内部中断外部中断外部中断1、8086、8088CPU中断类型(中断类型(0255)392、中断向量表、中断向量表中断向量及存放地点中断向量中断向量00700FC9中断向量地址中断向量地址寄存器寄存器004FH004EH004DH004CHCSHCSLIPHIPL地址地址4、8086/8088CPU的中断响应过程1)内部中断响应过程)内部中断响应过程将类型码乘4,计算出中断向量的地址硬件现场保护,FLAGS入栈清除IF和TF标志位,屏蔽新的INTR中断和单步中断保存断点,断点的CS(先)和IP(后)入栈根据a)计算出的地址从中断向量表中取出中断服务程序

23、的入口地址,分别送入CS和IP中转入中断服务子程序执行2)外部)外部NMI中断响应过程中断响应过程NMI的中断类型码为2,中断处理过程与内部中断一样403)外部)外部INTR中断响应过程中断响应过程在INTR有效时,若中断允许标志IF=1,则CPU在当前指令执行完后产生两个连续的中断响应总线周期。在第1个中断响应总线周期,CPU将地址/数据总线置高阻,发出第1个#INTA(中断响应)给8259A(中断控制器),并禁止其他总线控制器访问总线在第2个中断响应总线周期,CPU发出第2个#INTA(中断响应)通知8259A将响应中断请求的中断类型码放到数据总线上供CPU读取CPU读取中断类型码后的中断

24、处理过程与内部中断一样41428259A可完成如下任务:优先级排队管理记录各级中断源的中断请求响应中断时,向CPU提供中断类型号一片8259A可以管理8个中断优先级,两级级联最多可管理64级中断一、 8259A的结构1、 8259A引脚5.5 8259A可编程中断控制器可编程中断控制器 43#SP/#EN:I/O。 主从定义/缓冲器方向:当工作在非缓冲方式时作输入线,指定8259A为主控(SP=1)或是从控(SP=0)。在缓冲工作方式时,用作输出线,控制缓冲器的接收发送:当数据从CPU送往8259A时,它为高电平;当数据从8259A 送往CPU时,它为低电平。只有一个8259A时,它接高电平。

25、CSWRRDD7D0CAS0CAS1GNDVCCA0INTAIR7IR0INTSP/ENCAS2图图5.7.1 8259A引脚引脚123142815CAS0-CAS2:I/O。级联总线:主控8259A与从控8259A的连接线。对于主控芯片为输出,对于从控芯片为输入44INT:输出。8259A的中断申请信号,连到CPU的INTR引脚。IR0IR7:输入。外设的中断请求,上升沿或高电平(可通过编程设定)时表示有中断请求到达#INTA:输入。中断响应信号。在中断响应过程中CPU的中断响应信号由此端进入8259A#CS:输入,片选#WR:输入,写#RD:输入,读D7D0:输入输出,数据线A0: 输入,

26、地址线,它一般连到微机系统的A0线上45数据总线缓冲器读/写逻辑级联缓冲/比较器控制逻辑中断服务寄存器(ISR)中断屏蔽寄存器(IMR)优先级判别寄存器(PR)中断请求寄存器(IRR)D7D0RDWRA0CSCAS0CAS1CAS2SP/EN内部总线图5.7.2 8259A的内部结构INTINTAIR0IR72、8259A的内部结构46(1)中断请求寄存器(中断请求寄存器(IRR)记录IR线上的各级中断请求,哪一根IR线有请求,IRR的相应位就置“1”(2)中断服务寄存器()中断服务寄存器(ISR)保存正在响应的中断,某位为“1”表示中断正在被响应(3)中断屏蔽寄存器()中断屏蔽寄存器(IMR

27、)IMR的每一位可以对IRR中相应的中断源进行屏蔽(4)优先权寄存器()优先权寄存器(PR)对保存在IRR中的各个中断请求,经过判断确定最高的优先权,并在中断响应周期把它选通至ISR47(5)数据总线缓冲器)数据总线缓冲器:是8259A与系统数据总线的接口,它是8位的双向三态缓冲器(6)读)读/写控制逻辑写控制逻辑:CPU通过它实现对8259A的读出(状态信号)和写入(初始化编程)(7)级联缓冲器)级联缓冲器:实现8259A片子之间的级联,使得中断源可由8级扩展至64级(8)控制逻辑部分)控制逻辑部分:对片子内部的工作进行控制,使它按编程的规定工作481、 中断优先方式与中断嵌套中断优先方式与

28、中断嵌套(1)中断优先方式)中断优先方式u固定优先级方式固定优先级方式:u各中断请求的优先级是固定的。8259A的默认方式。默认情况下,IR0优先级最高,IR7优先级最低。可以通过程序重新设置优先级u循环优先级方式循环优先级方式:u此时,各中断请求的优先级是顺序变化的。一个中断源得道中断服务以后,它的优先级自动降为最低,原来比他低一级的中断则为最高级,依次排列。这适合各中断源优先权级别相同的情况三、三、8259A的工作方式的工作方式49(2)中断嵌套)中断嵌套u普通全嵌套方式普通全嵌套方式:u当处理某一级中断时,与它同级或优先权更低的中断源的申请就被屏蔽,只有优先权比它更高中断源的申请才被允许

29、u特殊全嵌套方式特殊全嵌套方式:当处理某一级中断时,如果有同级的中断申请,8259A也会响应。特殊全嵌套方式一般用在8259A级联的系统中,此时只有主片8259A为特殊全嵌套方式,这样,在当处理某一从片的中断时,来自同一从片的中断申请也会被处理。在特殊全嵌套方式下,在中断结束时,应通过软件检查刚结束的中断是否是从片的唯一中断。2、中断结束处理方式、中断结束处理方式50a.自动结束方式自动结束方式 b.一般中断结束方式一般中断结束方式 c.特殊中断结束方式特殊中断结束方式 513、中断源屏蔽方式、中断源屏蔽方式a.普通屏蔽方式普通屏蔽方式 b.特殊屏蔽方式特殊屏蔽方式 :允许较低优先级中断源得到

30、响应的特允许较低优先级中断源得到响应的特殊手段殊手段4、中断触发方式、中断触发方式a.上升沿触发上升沿触发b.高电平触发高电平触发525、级联工作方式、级联工作方式四、四、8259A的初始化编程的初始化编程8259A的编程分为:的编程分为:初始化编程初始化编程:CPU向8259A发送初始化命令字ICW。在8259A工作之前,必须写入ICW使其处于准备就绪状态操作方式编程操作方式编程: CPU向8259A发送操作命令字OCW。OCW可在8259A初始化以后的任何时刻写入531、8259A内部寄存器的寻址方法内部寄存器的寻址方法#CS#RD#WRA0D4D3操作操作010000100011XXX写

31、入OCW2写入OCW3写入ICW1依次写入ICW2,ICW3,ICW400101 读出IRR、ISR读出IMR542、8259A的初始化顺序的初始化顺序55送ICW1送ICW2级联方式?送ICW3需要ICW4?送ICW4准备接收中断YNYN561)初始化命令字)初始化命令字ICW(1)ICW1:初始化字:初始化字3、8259A的命令字的命令字例如:若8259A采用电平触发,单片使用,需要ICW4,则ICW1=00011011B0X X X 1 LTIM X SNGL IC4A0D7 D0=1: 需要ICW4=0:不需要ICW4=1: 单片使用,不需ICW3=0: 级联使用,需ICW3=1: 电

32、平触发=0:沿触发特征位57(2)ICW2:中断类型号:中断类型号中断类型号由高5位和低3位相加得到,高5位由初始化程序的ICW2指定,低3位由IRi的优先级编码决定,并在CPU读取中断号之前,由8259A自动填写1X X XA0D7 D3 D0中断类型号的高5位例如:PC机中ICW2被初始化为08H,即IR0的中断类型号为08H,IR7的中断类型号为0FH,58(3) ICW3:级联控制字:级联控制字只用于级联方式只用于级联方式例如:从控的INT级联至主控IR5上,则主控ICW3=0010000B,从控ICW3=05H,1S7 S6 S5 S4 S3 S2 S1 S0A0D7 D3 D0主控

33、主控ICW31X X X X X ID2 ID1 ID0A0D7 D3 D0从控从控ICW3从控标志码:若从控的INT级联至主控IRi上,则ID2ID0=i=1 对应IR线上连接了从片=0 对应IR线上没有连接从片5910 0 0 SFNM BUF M/S AEOI UPMA0D7 D0=1: 自动EOI=0: 正常EOI0X:非缓冲方式10:缓冲方式主片11:缓冲方式从片=1: 特殊的全嵌套方式=0:不是特殊的全嵌套方式=1: 8086/8088系统=0: 8080/8085系统(4)ICW4:中断结束方式字:中断结束方式字(1) OCW1:中断屏蔽字,向:中断屏蔽字,向IMR写入屏蔽字写入

34、屏蔽字601M7 M6 M5 M4 M3 M2 M1 M0A0D7 D01:屏蔽0:允许中断2)操作命令字)操作命令字OCW610R SL EOI 0 0 L2 L1 L0A0D7 D0指定中断等级最低的IR特征位(2)OCW2:中断结束和优先级循环:中断结束和优先级循环001 一般EOI命令,全嵌套方式011 特殊EOI命令,全嵌套方式,按L2L0编码复位ISR101 一般EOI命令,优先级自动循环100 在自动EOI时设置优先级自动循环000 在自动EOI时取消优先级自动循环111 一般EOI命令,按L2L0编码循环优先级(L2L0为最低优先级)110 自动EOI,按L2L0编码循环优先级

35、(L2L0为最低优先级)620X ESMM SMM 0 1 P RR RISA0D7 D000X: 无作用010: 在下一个读脉冲读IRR011: 在下一个读脉冲读ISR1XX: 在下一个读脉冲读查询字写入OCW3标志=0X: 无作用=10:复位特殊屏蔽(变为普通屏蔽)=11:置位特殊屏蔽(允许特殊屏蔽字)(3) OCW3:屏蔽方式和状态读出控制字:屏蔽方式和状态读出控制字3)读)读8259A状态状态(1)为了解)为了解8259A状态,状态,CPU可以读出可以读出IRR,ISR, IMR的内容的内容。OCW3设定读取IRR和ISR (A0=0)。当A0=1时,读取IMR。(2)CPU读取读取8

36、259A的查询字的查询字OCW3的P=1时, 表明CPU发送的是查询命令,8259A得到命令后,组成查询字,等CPU来取。CPU执行下一条输入指令(A0=0),便可读到查询字。查询字的结构为:630 I W2 W1 W0A0D7 D0表明当前中断请求的最高优先级=1:有中断请求=0:无中断请求644、8259A初始化编程举例初始化编程举例在PC/AT(80286)系统中:(1)要求与特点共15级向量中断,采用两片级联,CAS0CAS2作级连线,从片的INT连到主片的IR2端口地址:主片为020H和021H。从片为0A0H和0A1H中断类型号:主片为08H0FH。从片为70H77H主从片的中断请

37、求均为沿触发采用完全嵌套方式,优先级排列次序为0级最高,依次为1级,8级15级,然后是3级 7级采用非缓冲方式,主片的#SP/EN端接+5V,从片的#SP/EN端接地65 CAS20IR0 INTIR1 SP/ENIR2 中IR3 断IR4 控IR5 制IR6 器IR7 INTAA0 RDCS WR从片8259A图图5.7.4 PC/AT机中断系统的硬件连接机中断系统的硬件连接INTR CPUS2S1S0 总 S2INTA 线 S1IOR 控 S0IOW 制 器数据线D7D0 CAS20IR0 INTIR1 SP/ENIR2 中IR3 断IR4 控IR5 制IR6 器IR7 INTAA0 RD

38、CS WR主片主片8259A定时器键盘COM2COM1并口2软盘驱动器并口1 CAS20IR0 INTIR1 SP/ENIR2 中IR3 断IR4 控IR5 制IR6 器IR7 INTAA0 RDCS WR从片8259A实时钟保留保留保留保留协处理器硬盘控制器保留 CAS20IR0 INTIR1 SP/ENIR2 中IR3 断IR4 控IR5 制IR6 器IR7 INTAA0 RDCS WR从片从片8259A661) 8259A初始化编程初始化编程;初始化8259A主片INTA00 EQU 020H ; 8259A主片端口0INTA01 EQU 021H ; 8259A主片端口1 MOV AL, 11H;ICW1:沿触发,多片,要ICW4 OUT INTA00, AL JMP SHORT$+2 ; I/O端口延时要求 MOV AL, 8; ICW2: IR0的中断号08H OUT INTA01, AL JMP SHORT$+2 ; I/O端口延时要求

温馨提示

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

评论

0/150

提交评论