第7章中断系统_第1页
第7章中断系统_第2页
第7章中断系统_第3页
第7章中断系统_第4页
第7章中断系统_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

1、计算机原理讲义8086 中断结构第7.1节 8086中断结构一. 硬件中断1. 可屏蔽中断可屏蔽中断 输入为输入为INTR引脚,高电平有效,受引脚,高电平有效,受IF标志控制标志控制 CPU在每条指令的最后一个在每条指令的最后一个T状态检测该引脚,若状态检测该引脚,若CPU响应中断响应中断请求,则输出请求,则输出/INTA低电平有效,从外设读取中断类型码。低电平有效,从外设读取中断类型码。 中断类型码:中断类型码:用用1个字节对个字节对8086的的256个中断类型进行的编码个中断类型进行的编码 每个中断类型码对应每个中断类型码对应1种中断类型,也对应种中断类型,也对应4字节的字节的中断服务程序

2、中断服务程序入口地址入口地址(段地址段地址:偏移量偏移量),中断服务程序入口地址又称,中断服务程序入口地址又称中断向量中断向量。2. 非屏蔽中断非屏蔽中断 输入为输入为NMI引脚,上升沿有效,不受引脚,上升沿有效,不受IF控制控制 中断类型码为中断类型码为2,该中断一般用于非常事件。,该中断一般用于非常事件。PC/XT机中用于系机中用于系统板上统板上RAM奇偶错,奇偶错,I/O通道奇偶错和通道奇偶错和8087异常中断。异常中断。计算机原理讲义8086 中断结构二. 软件中断1. 除法溢出中断(除法溢出中断( DIV和和IDIV)()(INT 0) 若除数为若除数为0或商超过寄存器所能表达的范围

3、,则产生类型为或商超过寄存器所能表达的范围,则产生类型为0的软件中断的软件中断2. 单步中断单步中断 (INT 1) 若若TF=1,则,则CPU每执行完一条指令后便产生类型码为每执行完一条指令后便产生类型码为1的软件中断的软件中断3. 执行执行 INT 指令引起的中断指令引起的中断 (INT n) 执行执行INT n指令则会引起中断类型码为指令则会引起中断类型码为n的软件中断的软件中断4. 执行执行 INTO 指令引起的中断(指令引起的中断(INT 4) 若若OF=1,则指令,则指令INTO引起中断类型码为引起中断类型码为4的软件中断的软件中断三. 中断优先级1.软件中断(单步中断除外)软件中

4、断(单步中断除外) 优先级最高优先级最高2.NMI中断中断3.INTR中断中断4.单步中断单步中断 优先级最低优先级最低计算机原理讲义中断向量表四. 中断向量表 8086在内存在内存00000H003FFH的的1KB地址空间建立了一个地址空间建立了一个中断中断向量表向量表,用于存放,用于存放256个中断向量,每个向量占个中断向量,每个向量占4个字节,前两个字节个字节,前两个字节为中断服务程序的偏移地址为中断服务程序的偏移地址IP,后后两个字节为段地址两个字节为段地址CS。因此:。因此: 中断向量位置中断向量位置 = 中断类型码中断类型码 4例:例:INT 21H指令调用第指令调用第21号中断服

5、务程序,号中断服务程序,其入口地址存放在中断向量表中其入口地址存放在中断向量表中84H87H的的连续连续4个字节(个字节(21H484H)偏移量低偏移量低8位位偏移量高偏移量高8位位段地址低段地址低8位位段地址高段地址高8位位87H86H85H84HIPCS类型类型255指针指针除数为除数为0 单步单步非屏蔽非屏蔽断点断点溢出溢出003FCH00000H00004H00008H0000CH00010HCSIP段地址段地址偏移量偏移量类型类型0类型类型1类型类型2类型类型3类型类型4中断向量中断向量(地址)(地址)地址地址一个中断服务程序的入口地址称为一个中断服务程序的入口地址称为中断向量中断向

6、量,中断向量表就是中断服,中断向量表就是中断服务程序入口地址表。务程序入口地址表。类型码类型码类型类型FF计算机原理讲义中断向量表 由于由于每个中断类型码对应每个中断类型码对应4 4个字节的程序入口地址,因个字节的程序入口地址,因此此中断类型码乘以中断类型码乘以4便可得到中断向量表中存放中断服务程便可得到中断向量表中存放中断服务程序入口地址的存储单元的偏移量。序入口地址的存储单元的偏移量。 256个中断向量中个中断向量中0 4: 专用中断类型专用中断类型5 1FH: 保留中断类型保留中断类型 20H0FFH:用户可用中断类型:用户可用中断类型其中其中 080FH是是8个硬件中断个硬件中断例:例

7、:INT 21H指令调用第指令调用第21号中断服务号中断服务程序,其入口地址存放在中断向量表中程序,其入口地址存放在中断向量表中84H87H的连续的连续4个字节。个字节。(21H484H)偏移量低偏移量低8位位偏移量高偏移量高8位位段地址低段地址低8位位段地址高段地址高8位位84H85H86H87HIPCS中断向量位置中断向量位置 = 中断类型码中断类型码 4计算机原理讲义8086/8088中断总结 8086/8088中断总结中断总结 PC机中,由机中,由8259A管理多个可屏蔽中断请求的优先级,管理多个可屏蔽中断请求的优先级,IR0 IR7优先优先级由高到低级由高到低,中断类型码为,中断类型

8、码为08H0FH, 例:例:IR0对应中断类型码对应中断类型码08H中断控制逻辑中断控制逻辑INT 3指令指令INTO指令指令单步单步中断中断除数为除数为0中断中断INT n 指令指令非屏蔽中断非屏蔽中断IR0IR1IR2IR3IR4IR5IR6IR78259AINTINTR可屏蔽中断请求可屏蔽中断请求1NMI软件中断软件中断硬件中断硬件中断可屏蔽可屏蔽中断中断可屏蔽中断请求可屏蔽中断请求8计算机原理讲义8259级联 IBM PC/XT机中一般使用两片机中一般使用两片8259A级连级连8259级联后可管理级联后可管理15个外设,只能两级级联个外设,只能两级级联优先级:优先级:0 1 ( 8 1

9、5 ) 3 7 高高 低低IR0IR1IR2IR3IR4IR5IR6IR7 主片主片8259AINTRINTRCPUIR8IR9IR10IR11IR12IR13IR14IR15从片从片8259AINTR计算机原理讲义8259内部结构第7.2节 可编程中断控制器8259一. 8259功能及内部结构INTAINT数据总线数据总线 缓冲器缓冲器读读/写写控控 制制逻逻 辑辑级级 连连缓缓 冲冲比比 较较SP/EN控制电路控制电路控制逻辑控制逻辑初始化命令初始化命令 寄存器组寄存器组操作命令操作命令寄存器组寄存器组 中断中断 请求请求 寄存寄存 器器(IRR)IR0IR1IR2IR3IR4IR5IR6

10、IR7 中断中断服务服务寄存器寄存器(ISR)中断中断优先优先级分级分析器析器中断屏蔽寄存器中断屏蔽寄存器 (IMR)D7D0RDWRCSA0CAS1CAS2CAS0功能简介:功能简介: 具有具有8级优先权控级优先权控制制,通过级联可扩展通过级联可扩展至至64级级 每一级中断都可每一级中断都可以屏蔽和允许以屏蔽和允许 中断申请可以中断申请可以有有电平触发,也可电平触发,也可有有边沿触发边沿触发 级联逻辑控制级联逻辑控制8259A的主从工的主从工作方式作方式计算机原理讲义8259内部结构说明内部结构说明内部结构说明lIRR 中断请求寄存器,保存中断请求寄存器,保存 8个输入端个输入端IR0IR7

11、的中断申请状态,输入可的中断申请状态,输入可高电平有效,也可上升沿有效;高电平有效,也可上升沿有效;lISR 中断服务寄存器,保存中断服务寄存器,保存CPU正在处理的中断请求;正在处理的中断请求;lIMR 中断屏蔽寄存器,对中断申请进行屏蔽控制中断屏蔽寄存器,对中断申请进行屏蔽控制;l中断优先级分析器决定中断申请的优先级中断优先级分析器决定中断申请的优先级; 把初始化命令字和操作命令字结合进行设置,可以有四种优先级管理方式:把初始化命令字和操作命令字结合进行设置,可以有四种优先级管理方式:1 1、全嵌套方式、全嵌套方式( (中断请求按优先级中断请求按优先级0-70-7进行处理,进行处理,0 0

12、级中断的优先级最高级中断的优先级最高) )2 2、自动循环方式(优先级相等。这种方式下,优先级队列是在变化的,一个、自动循环方式(优先级相等。这种方式下,优先级队列是在变化的,一个设备受到中断服务后,它的优先级自动降为最低)设备受到中断服务后,它的优先级自动降为最低)3 3、特殊循环方式(设置最低优先级)、特殊循环方式(设置最低优先级)4 4、特殊的全嵌套方式(可在级联时使用、特殊的全嵌套方式(可在级联时使用, ,与全嵌套方式基本相同,不过与全嵌套方式基本相同,不过允许允许同级中断同级中断)l控制逻辑控制逻辑初始化命令寄存器组初始化命令寄存器组:ICW1ICW4操作操作命令寄存器组命令寄存器组

13、: OCW1OCW3INT 中断申请输出,高电平有效,可连接中断申请输出,高电平有效,可连接8086 INTR引脚引脚/INTA 中断响应输入,接收中断响应输入,接收8086发出的中断响应信号,有效时发出的中断响应信号,有效时8259应输应输出中断类型码出中断类型码计算机原理讲义8259内部结构1234567891011121314 CS WR RD D7 D6 D5 D4 D3 D2 D1 D0CAS0CAS1GNDIntel8259A2827262524232221201918171615VccA0INTAIR7IR6IR5IR4IR3IR2IR1IR0INTSP/ENCAS28259A引

14、脚图引脚图 内部结构说明内部结构说明l D7D0 双向三态数据线,传送数据双向三态数据线,传送数据l /RD 读信号,低电平有效读信号,低电平有效l /WR 写信号,低电平有效写信号,低电平有效l /CS 片选信号,低有效,给片选信号,低有效,给8259分配地分配地址址l A0 用于选择用于选择8259内部不同的寄存器。内部不同的寄存器。l CAS2CAS0 级联信号线,当级联信号线,当8259为主为主片时为输出,从片时为输入片时为输出,从片时为输入l SP/EN 在非缓冲工作方式时,用作输入,在非缓冲工作方式时,用作输入,决定决定8259A为主片还是从片;在缓冲工作为主片还是从片;在缓冲工作

15、方式时,用作输出,由它打开总线缓冲器方式时,用作输出,由它打开总线缓冲器计算机原理讲义8259与计算机的连接二. 8259A与计算机的连接1. 8259A单片工作方式的接口电路单片工作方式的接口电路l 高位地址线高位地址线A15A5,通过通过74LS30(8输入与输入与非门)和非门)和74LS138进行进行部分译码,控制部分译码,控制/CS,端,端口范围为口范围为020H03FH,常用常用20H和和22H两个偶端两个偶端口口l 8259采用采用D7D0传送数据,传送数据,占用偶地址端口占用偶地址端口l 低位地址线低位地址线A1接接8259的的A0引引脚,用于选择脚,用于选择8259内部寄存器内

16、部寄存器D7D0D7D0RDWRINTINTAA0CS8259ASP/ENIR0IR1IR2IR3IR4IR5IR6IR7CAS2CAS1CAS0IRQ0IRQ1IRQ2IRQ3IRQ4IRQ5IRQ6IRQ7日时钟日时钟(08H)键盘键盘(09H)保留保留(0AH)COM2(0BH)COM1(0CH)硬盘硬盘(0DH)软盘软盘(0EH)打印机打印机(0FH)+5VIORIOWINTRINTAA1A13A15A14A10A12A1174LS3074LS04A9+5VA8A7A6A5+5VCBA74LS138Y1Y0G2AG2BG1范范 围围A15A14A13A12A11A10A9A8A7A6A

17、5A4A3A2A1A0A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 0 0 0 0 0 0 0 0 0 0 1 X X X X X0 0 0 0 0 0 0 0 0 0 1 X X X X X0020H0020H003FH003FH计算机原理讲义两片8259级联管理15级中断l 收到第一个收到第一个INTA时,主片时,主片通过通过CAS2CAS0通知有中通知有中断申请的从片在第二个断申请的从片在第二个INTA时送出中断类型码时送出中断类型码l 从片从片8259A的中断申请端的中断申请端INT接主片的接主片的IR2+5VINT8259主片主片SP/ENIR0IR1

18、IR2IR3IR4IR5IR6IR7IRQ0IRQ1IRQ2IRQ3IRQ4IRQ5IRQ6IRQ7CAS2 CAS1 CAS0D7D0CS8259从片从片SP/ENIR0IR1IR2IR3IR4IR5IR6IR7IRQ8IRQ9IRQ10IRQ11IRQ12IRQ13IRQ14IRQ15CAS2 CAS1 CAS0INT/CS220H3FHA0HBFH/CS1/INTA/RD/WRA0INTARDWRA0D7D0实时时钟实时时钟改向改向INT0A协处理器协处理器CSINTR/INTA/IOR/IOWA1D7D0l 8086系统系统主从芯片都用偶地主从芯片都用偶地址传递信息址传递信息l 主片的

19、主片的SP/EN接接+5V,从从片的片的SP/EN接地,主从片接地,主从片的的CAS2、CAS1、CAS0对应对应连接连接IRQ0 IRQ7的中的中断类型码:断类型码:08H0FHIRQ8 IRQ15的的中断类型码:中断类型码:70H77H计算机原理讲义8259与计算机的连接说明说明从片从片8259A的中断申请端的中断申请端INT接主片的接主片的IRQ2主片的主片的SP/EN接接+5V,从从片的片的SP/EN接地,主从片的接地,主从片的CAS2、CAS1、CAS0对应对应连接。连接。主片的端口地址主片的端口地址INTA1CS为为020H03FH, 从从片的端口地址片的端口地址INTA2CS为为

20、0A0 0BFH.8086系统系统主从芯片都用偶地址传递信息。主从芯片都用偶地址传递信息。范范 围围A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 0 0 0 0 0 0 0 0 0 0 1 X X X X X0 0 0 0 0 0 0 0 0 0 1 X X X X X 0020H0020H003FH003FH主芯片主芯片范范 围围A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A00 0

21、 0 0 0 0 0 0 1 0 1 X X X X X0 0 0 0 0 0 0 0 1 0 1 X X X X X 00A0H00A0H00BFH00BFH从芯片从芯片计算机原理讲义8259初始化命令字三. 8259初始化命令字1.ICW1 (Initial Command Word)A0=0,D4=1 表示表示对对ICW1编程编程D0(IC4)D0=1需要需要ICW4;D0=0 不不需要需要ICW4D1(SNGL)D1=1为单片为单片8259工作方式;工作方式; D1=0 为级联工作方式,此时要用为级联工作方式,此时要用ICW3指明级联端指明级联端A00IC4SNGLADILTIM1A7

22、A6 A5D7D6 D5 D4 D3D2D1D0计算机原理讲义8259初始化命令字D2(ADI)指明指明8080/8085系统中地址间距,系统中地址间距,8086系统不用系统不用D3(LTIM)D3=1 中断请求是电平触发方式中断请求是电平触发方式; D3=0 上升沿触发方式。上升沿触发方式。D5D7(A5A7)8080/8085系统中断服务程序页面地址,系统中断服务程序页面地址,8086系统不用系统不用注:初始化命令字一般在初始化注:初始化命令字一般在初始化8259时才写入,而且写入有严格的顺时才写入,而且写入有严格的顺序,先写序,先写ICW1,最后写,最后写ICW4初始化初始化 INTA0

23、_0 EQU 20HINTA0_1 EQU 22HMOV AL, 13H ;边沿触发,单片边沿触发,单片8259A,要设置要设置IC4OUT INTA0_0, AL ;ICW1A00IC4SNGLADILTIM1A7 A6 A5D7 D6 D5 D4 D3 D2D1D0ICW10 0 0 1 0 0 1 1设计设计13H计算机原理讲义8259初始化命令字2.ICW2 A0=1,跟跟在在ICW1后表示对后表示对ICW2编程编程 A15A8 为为8080/8085系统中页面地址高系统中页面地址高8位位; T7T3 为为8086系统中的中断类型码的高系统中的中断类型码的高5位,低位,低3位位根据申请

24、端自动填充。根据申请端自动填充。例例 若若ICW2 = 0000 1000B ,则,则8259A的的IR3引脚对应的中引脚对应的中断类型码为断类型码为 0000 1011 即即0BA01D7D6D5D4D3D2 D1 D0A15/T7 A14/T6 A13/T5 A12/T4 A11/T3A10 A9 A8A01XXX T3T4T7 T6T5D7 D6 D5 D4 D3 D2 D1 D0ICW2设计设计0 0 0 0 1 0 0 0 08HMOV AL, 08H;设定设定IR0中断类中断类 型码为型码为08H OUT INTA0_1, AL ;ICW2计算机原理讲义8259初始化命令字3.IC

25、W3 A0=1,且,且ICW1的的D1=0 (SNGL),跟在,跟在ICW2表示对表示对ICW3编程编程 主片主片 Si = 1表示第表示第IRi引脚上连接有从片引脚上连接有从片 从片从片 ID2ID0对应从片的识别码,对应从片的识别码,即表明从片连接到主片的第即表明从片连接到主片的第几个输入引脚上几个输入引脚上。响应中断时第一个。响应中断时第一个INTA,主片通过,主片通过CAS2 CAS0送出送出识别码通知有中断请求的从片,每个从片将识别码通知有中断请求的从片,每个从片将CAS2CAS0上信号与自己内部的识别码上信号与自己内部的识别码(ID2ID0)相比较,若相比较,若相相同,则在第二个同

26、,则在第二个INTA送出中断类型码。送出中断类型码。A0D7D6D5D4D3D2D1D01S7S6S5S4S3S2S1S0A0D7D6D5D4D3D2D1D0100000ID2ID1 ID0主片主片从片从片计算机原理讲义8259初始化命令字4.ICW4 A0=1,且,且ICW1的的D0=1,跟在其他初始化字后表示对,跟在其他初始化字后表示对ICW4编程编程 D0( pm)D0=1为为16位处理器体系;位处理器体系;D0=0 为为80/85处理器体系处理器体系 D1(AEOI) D1=1自动结束中断方式,自动结束中断方式,在第二个在第二个/INTA清清ISR(中中断服务寄存器断服务寄存器)中的对

27、应位中的对应位; D1=0 非自动结束中断方式,中断结束时发非自动结束中断方式,中断结束时发EOI命令命令清清ISR中的对应位中的对应位A0AEOIM/SBUFD7D6D5D4D3D2D1D01000SFNM pm计算机原理讲义8259初始化命令字D2(M/S)在缓冲方式下(在缓冲方式下(BUF=1),选择主片和从片,选择主片和从片,M/S=1为主片,为主片, M/S=0为从片。为从片。在非缓冲方式下,则在非缓冲方式下,则M/S不起作用,可为不起作用,可为1,也可为,也可为0. 由由SP/EN引引脚设定主片和从片脚设定主片和从片(接高电平为主片,接低电平为从片接高电平为主片,接低电平为从片)。

28、D3(BUF)D3=1为缓冲工作方式,为缓冲工作方式, SP/EN为为缓冲选通信号。缓冲选通信号。D3=0为非缓冲工作方式。为非缓冲工作方式。D4(SFNM)D4=1 为特殊全嵌套方式,此时允许同级中断再次进入,一般用于为特殊全嵌套方式,此时允许同级中断再次进入,一般用于多片级联方式;多片级联方式;D4=0 为普通全嵌套方式,禁止同级中断再次进入。为普通全嵌套方式,禁止同级中断再次进入。计算机原理讲义8259操作命令字四. 8259操作命令字操作命令字可在任何时候写入操作命令字可在任何时候写入8259A ,且无顺序。,且无顺序。1.OCW1 (Operation Command Word) A

29、0=1 表示设置表示设置OCW1Mi=1 表示屏蔽表示屏蔽IRi输入中断请求输入中断请求例屏蔽键盘例屏蔽键盘 IN AL, 21H OR AL, 02H OUT 21H, ALA0A0D7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D01 1M7M7M6M6M5M5M4M4M3M3M2M2M1M1M0M0计算机原理讲义8259操作命令字2.OCW2 A0=0,且,且D4D3 = 00,表示对,表示对OCW2编程编程 R 优先权循环状态优先权循环状态R=1优先权自动循环优先权自动循环;R=0优先权不循环优先权不循环 SL设定标志设定标志。SL=1由由L2、L1、L0指明中断号或最低优

30、先权指明中断号或最低优先权 EOI中断结束中断结束命令命令标志标志, EOI=1,EOI=1,非自动结束方式时清非自动结束方式时清ISn一般一般EOI指令指令(普通结束指令普通结束指令)为为 MOV AL, 20H OUT 20H, ALA0D7D6D5D4D3D2D1D00RSLEOI00L1L0L2计算机原理讲义8259操作命令字RSLEOI001普通普通EOI中断结束命令,清除当前的中断响应,全嵌套方式中断结束命令,清除当前的中断响应,全嵌套方式011特殊特殊EOI命令,清除由命令,清除由L2 L1 L0指示的中断响应,全嵌套方指示的中断响应,全嵌套方式式101普通普通EOI命令,清除当

31、前的中断响应,优先级自动循环命令,清除当前的中断响应,优先级自动循环100中断自动结束模式下,中断自动结束模式下,8259A按优先级自动循环方式工作按优先级自动循环方式工作000中断自动结束模式下,中断自动结束模式下,取消取消8259A8259A的优先级自动循环工作方式的优先级自动循环工作方式111结束由结束由L2L2L0L0指示的中断,并使指示的中断,并使L2L2L0L0为最低优先级为最低优先级110设定最低优先级特殊循环设定最低优先级特殊循环, ,此时由此时由L2L2L0L0指出最低优先级指出最低优先级010无操作无操作计算机原理讲义8259操作命令字3.OCW3 A0=0,且,且D4D3

32、 = 01,表示对,表示对OCW3编程编程ESMM SMM 1 1 设置特殊屏蔽,无优先级,未屏蔽中断申请均可进入设置特殊屏蔽,无优先级,未屏蔽中断申请均可进入 1 0 取消特殊屏蔽取消特殊屏蔽 0 无操作无操作P=1 ,设置,设置8259A为查询工作方式,此时为查询工作方式,此时8259A不发不发INT信号,信号,CPU通过查询指令决定服务程序。通过查询指令决定服务程序。查询得到格式如下表所示查询得到格式如下表所示A0D7D6D5D4D3D2D1D000ESMM SMM01RRRISP计算机原理讲义8259操作命令字I=1 表示有中断请求表示有中断请求W2 W1 W0为当前最高优先级的中断请

33、求中断号为当前最高优先级的中断请求中断号 P=0,由,由RR和和RIS设置设置下一个读取的寄存器下一个读取的寄存器 RR RIS 1 0 在下一个在下一个A0 = 0端口读端口读IRR (中断请求寄存器中断请求寄存器) 1 1 在下一个在下一个A0 = 0端口读端口读ISR (中断服务寄存器中断服务寄存器) A0D7 D6D5D4 D3D2D1 D00W1 W0W2IXXXX 例:读取例:读取ISR到到AL中中 mov al, 0BH;OW3初始化初始化 out 20H, al; IN al, 20H随时读取随时读取IMR(中断屏蔽寄存器中断屏蔽寄存器)到到AL中中 IN al, 21H计算机

34、原理讲义五. 8259初始化编程举例1. IBM PC/XT机对机对单单片片8259A初始化初始化端口地址为端口地址为20H和和22H接收接收8个中断请求信号为边沿触发个中断请求信号为边沿触发选择全嵌套选择全嵌套,缓冲方式,缓冲方式,IR0为最高优先级,为最高优先级, IR7为最低优先级为最低优先级设定设定IR0中断类型码为中断类型码为08H注:注:8259A的地址线的地址线A0是连接到系统地是连接到系统地址总线的址总线的A1上上A0AEOIM/SBUFD7 D6 D5D4D3D2 D1 D01000SFNMupmICW4A00IC4SNGLADILTIM1A7 A6 A5D7 D6 D5 D

35、4 D3 D2D1D0ICW1A01XXX T3T4T7 T6T5D7 D6 D5 D4 D3 D2 D1 D0ICW2级联方式?级联方式?ICW1ICW2ICW3要要ICW4?ICW4NYYN初始化编程顺序初始化编程顺序是否级联是否级联请求信号格式请求信号格式是否用是否用ICW4设置中断类型码设置中断类型码是主片还是从片是主片还是从片主片:对应主片:对应IR0-IR7的情况的情况从片:低从片:低3位为位为标识码,其余为标识码,其余为0是否为特殊全是否为特殊全嵌套方式嵌套方式是否为缓冲方是否为缓冲方式式是否为自动结是否为自动结束中断方式束中断方式是否为是否为16位系位系统统0 0 0 1 0

36、0 1 1设计设计设计设计0 0 0 0 1 0 0 0设计设计0 0 0 0 1 0 0 113H08H09H要求:要求:计算机原理讲义8259初始化编程举例初始化程序段初始化程序段INTA0_0 EQU 20HINTA0_1 EQU 22HMOV AL, 13H ;边沿触发,单片边沿触发,单片8259A,要设置要设置IC4OUT INTA0_0, AL ;ICW1MOV AL, 08H;设定设定IR0中断类型码为中断类型码为08H OUT INTA0_1, AL ;ICW2MOV AL, 09H;全嵌套,缓冲方式,系统为全嵌套,缓冲方式,系统为16位位OUT INTA0_1, AL ;IC

37、W4计算机原理讲义8259初始化编程举例2. 在在AT/286以上机器,使用两片以上机器,使用两片8259A级联组成级联组成15个中断申个中断申请输入端请输入端要求:要求: 端口地址主片为端口地址主片为20H和和22H,从片为,从片为A0H和和A2H。 接收上升沿触发中断请求信号。接收上升沿触发中断请求信号。 选择全嵌套方式,优先级排列次序为选择全嵌套方式,优先级排列次序为0级最高,依次为级最高,依次为1级,级,815级,然后是级,然后是37级。级。 采用非缓冲方式,主片采用非缓冲方式,主片SP/EN接接+5V,从片,从片SP/EN接接地地 设定主片中断类型码为设定主片中断类型码为08H0FH

38、,从片,从片为为70H77H计算机原理讲义8259初始化编程举例初始化命令字初始化命令字IC4SNGLADILTIM1XXICW111HXXXX T3T4T7T6T5ICW208H主主从从 70HS7S6S5S4S3S2S1S0主主ICW304H00000从从01002HAEOIM/SBUF000SFNMupmICW401H边沿触发,多片边沿触发,多片8259A,设置设置IC4设定主片设定主片IR0中断类型码为中断类型码为08H设定从片设定从片IR0中断类型码为中断类型码为70H主片主片IR2连有从片连有从片从片从片INT引脚连在主片引脚连在主片IR2引脚上引脚上主主从从主主从从 11H边沿触

39、发,多片边沿触发,多片8259A,设置设置IC4主主从从 01H主片全嵌套,非缓冲方式主片全嵌套,非缓冲方式从片全嵌套,非缓冲方式从片全嵌套,非缓冲方式计算机原理讲义8259初始化编程举例初始化程序段初始化程序段INTA00 EQU 20HINTA01 EQU 22HINTB00 EQU 0A0HINTB01 EQU 0A2HMOV AL, 11HOUT INTA00, AL ;主片主片ICW1MOV AL, 08HOUT INTA01, AL ;ICW2MOV AL, 04HOUT INTA01, AL ;ICW3MOV AL, 01HOUT INTA01, AL ;ICW4MOV AL,

40、11HOUT INTB00, AL ;从从ICW1MOV AL, 70HOUT INTB01, AL ;ICW2MOV AL, 02HOUT INTB01, AL ;ICW3MOV AL, 01HOUT INTB01, AL ;ICW4计算机原理讲义8259初始化编程举例 8259A在在IBM PC系列机上的应用系列机上的应用8259A的的IRQ0(中断类型码为中断类型码为08H)的中断请求来自定时器的中断请求来自定时器8253,每隔,每隔55ms产生一次。产生一次。DOS系统利用它来实现时钟计时功能。本程序用新的系统利用它来实现时钟计时功能。本程序用新的08H中中断服务程序暂时替代计时程序,

41、使得每次中断显示一串信息,即显示断服务程序暂时替代计时程序,使得每次中断显示一串信息,即显示“A 8259A Interrupt !”,显示,显示20次后,恢复中断服务程序,返回次后,恢复中断服务程序,返回DOS。获得中断向量获得中断向量 利用利用DOS功能调用功能调用35H号号子功能子功能入口参数入口参数 AH=35H,AL=中断中断类型码类型码返回参数返回参数 ES:BX 中断服务程序入口地址中断服务程序入口地址中断向量安装中断向量安装 利用利用DOS功能调用功能调用25H号号子功能子功能入口参数入口参数 AH=25H,AL=中断中断类型码类型码 DS:DX 中断服务程序入口地址中断服务程序入口地址返回参数:返回参数: 无无DOS系统提供中断信息处理功能系统提供中断信息处理功能偏移量低偏移量低8位位偏移量高偏移量高8位位段地址低段地址低8位位段地址高段地址高8位位0023H0022H0021H0020HIPCSint 21H中断向量中断向量(类型码类型码08H)计算机原理讲义主程序主程序保存原有保存原有08H中断向量中断向量设置新的设置新的08H中断向量中断向量开中断开中断Count = 20设置屏蔽寄存设置屏蔽寄存器,只允许器,只允许IR0中

温馨提示

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

评论

0/150

提交评论