版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、微机原理与接口技术7中断1 第7章 中断系统 7.1 7.1 中断的概念中断的概念 7.1.1 7.1.1 为什么要用中断?为什么要用中断? 7.1.2 7.1.2 中断源中断源 7.1.3 7.1.3 中断系统的功能中断系统的功能 7.1.47.1.4 中断优先权中断优先权 7.2 7.2 中断处理中断处理 7.2.1 CPU7.2.1 CPU响应可屏蔽中断的条件响应可屏蔽中断的条件 7.2.2 CPU7.2.2 CPU响应中断要响应中断要自动完成自动完成的任务的任务 7.2.3 7.2.3 中断处理过程中断处理过程 7.3 7.3 中断服务程序设计举例中断服务程序设计举例 7.3.1 7.
2、3.1 中断服务程序设计步骤中断服务程序设计步骤 7.3.27.3.2中断向量表的装入与修改中断向量表的装入与修改 微机原理与接口技术7中断2 7.4 可编程中断控制器8259A 7.5.1 8259A的芯片内部结构 7.5.2 8259A的工作方式 7.5.3 8259A的级联使用 7.5.4 8259A 的控制字和工作方式 7.5 8259A在微机系统中的使用 7.6.1 8259编程命令 7.6.2 8259A的使用 微机原理与接口技术7中断3 学学 习习 目目 的的 通过对本章的学习,通过对本章的学习,您应该能够达到下列要求:您应该能够达到下列要求: 中断的概念及中断的用途中断的概念及
3、中断的用途 中断类型及中断向量中断类型及中断向量 中断过程中断过程 8259A8259A中断原理中断原理 中断在微机系统中的应用中断在微机系统中的应用 微机原理与接口技术7中断4 重重 点点 中断的概念中断的概念 微机原理与接口技术7中断5 7.1 中断的概念 外设向外设向CPU发中断请求,发中断请求,CPU接收到中断请求并接收到中断请求并 在一定条件下,暂时停止执行原来的程序而转去在一定条件下,暂时停止执行原来的程序而转去 处理中断,处理好中断服务再返回继续执行原来处理中断,处理好中断服务再返回继续执行原来 的程序,就称为一个中断过程。中断是的程序,就称为一个中断过程。中断是CPU被动被动
4、的响应外设要求服务。的响应外设要求服务。 同步操作、并行处理;同步操作、并行处理; 实时监控与信息捕捉;实时监控与信息捕捉; 故障处理。故障处理。 微机原理与接口技术7中断6 1.中断源中断源: 系统外部中断源:系统外部中断源: I/O设备:如键盘、打印机等;设备:如键盘、打印机等; 数据通道:如软盘、硬盘等;数据通道:如软盘、硬盘等; 实时时钟:如外部的定时电路;实时时钟:如外部的定时电路; 用户故障源:电源掉电等。用户故障源:电源掉电等。 内部中断源:内部中断源: 执行中断指令;执行中断指令; 除法错;除法错; 单步执行、断点中断、溢出中断等。单步执行、断点中断、溢出中断等。 2.中断源识
5、别目的中断源识别目的: 形成该中断服务程序的形成该中断服务程序的入口地址?入口地址?中断向量或中断查询中断向量或中断查询 微机原理与接口技术7中断7 中断源的分类中断源的分类 硬件中断:硬件中断:非屏蔽中断非屏蔽中断NMINMI(中断向量号为(中断向量号为2 2) 可屏蔽中断可屏蔽中断INTRINTR 软件中断:溢出中断软件中断:溢出中断INTOINTO(中断向量号为(中断向量号为4 4) 除法出错中断(中断向量号为除法出错中断(中断向量号为0 0) 单步中断(中断向量号为单步中断(中断向量号为1 1) 断点中断断点中断INT3INT3 (中断向量号为(中断向量号为3 3) 指令中断指令中断I
6、NT nINT n(中断向量号为(中断向量号为n n) 中断向量号:中断向量号: 中断向量:中断向量: 中断向量表:中断向量表: = =中断类型码(中断类型码(256256个)个) CS(CS(高字高字)+IP()+IP(低字低字) ),其首地址,其首地址= =中断类型码中断类型码* *4 4 由中断向量构成,即中断入口地址表由中断向量构成,即中断入口地址表 微机原理与接口技术7中断8 分为分为5 5个阶段:个阶段: (1 1)中断请求)中断请求 (2 2)中断判优)中断判优 (3 3)中断响应)中断响应 (4 4)中断处理)中断处理 (5 5)中断返回)中断返回 微机原理与接口技术7中断9
7、(1 1)中断请求)中断请求 中断源发送请求信号,外部中断由硬件产生,中断源发送请求信号,外部中断由硬件产生, 内部中断由指令产生。内部中断由指令产生。 外部中断:外部中断:CPUCPU在每条指令执行的最后一个周在每条指令执行的最后一个周 期采样中断请求信号。期采样中断请求信号。 (2 2)中断判优)中断判优 如果有多个中断源提出中断申请,如果有多个中断源提出中断申请,CPUCPU可通过查可通过查 询式或硬件电路自动完成中断优先权排队,然后询式或硬件电路自动完成中断优先权排队,然后 响应优先权最高的中断申请响应优先权最高的中断申请 微机原理与接口技术7中断10 (3 3)中断响应)中断响应 如
8、果为内部中断或如果为内部中断或NMINMI中断,中断,CPUCPU自动形成中自动形成中 断类型码断类型码 如果是如果是INTRINTR中断,在中断,在IF=1IF=1的前提下,进入中的前提下,进入中 断响应周期,从断响应周期,从DBDB获取中断类型码获取中断类型码 可屏蔽中断的响应周期:可屏蔽中断的响应周期: 第一个总线周期:第一个总线周期:CPUCPU送出中断响应信号送出中断响应信号INTAINTA 第二个总线周期:被响应的外设通过数据总第二个总线周期:被响应的外设通过数据总 线送中断类型码给线送中断类型码给CPUCPU 关中断关中断 保护保护断点断点 (FLAG(FLAG、CS CS 、I
9、PIP入栈入栈) ) 给出中断服务入口给出中断服务入口 执行执行中断服务程序中断服务程序 微机原理与接口技术7中断11 保护现场(寄存器入栈)保护现场(寄存器入栈) 开中断开中断 ( (允许中断嵌套允许中断嵌套) ) 中断服务程序(需完成的功能)中断服务程序(需完成的功能) CPU CPU关中断关中断 恢复现场恢复现场 中断返回中断返回 断点恢复(断点恢复(IPIP、CSCS、FLAGFLAG出栈)出栈) 微机原理与接口技术7中断12 CPUCPU响应响应INTRINTR中断的中断的条件条件是是 (1)中断请求信号)中断请求信号 (2)开放总中断)开放总中断 (3)在现行指令结束后响应中断)在
10、现行指令结束后响应中断 80868086系统中中断源种类很多,但只有系统中中断源种类很多,但只有INTRINTR 中断可以由用户开发提供给外设使用中断可以由用户开发提供给外设使用 微机原理与接口技术7中断13 (1)需要中断请求)需要中断请求中断请求触发器中断请求触发器 (2)多个外设需分别处理)多个外设需分别处理中断屏蔽触发器中断屏蔽触发器 (3)CPU与外设的数据中转与外设的数据中转数据缓冲器数据缓冲器 (4)选择外设的端口号)选择外设的端口号端口地址译码器端口地址译码器 (5)CPU执行完当前指令执行完当前指令,在最后的一个,在最后的一个T状态才采样状态才采样 INTR线线 微机原理与接
11、口技术7中断14 7.3.2 中断优先权 同时有多个中断请求,同时有多个中断请求,CPU如何如何选择选择中断中断 源?源? 中断嵌套时,中断嵌套时,CPU是否响应新的中断请求?是否响应新的中断请求? 微机原理与接口技术7中断15 软件查询软件查询 最简单的一种确定优先级的方法。即查询的最简单的一种确定优先级的方法。即查询的 顺序就是中断的优先级顺序就是中断的优先级先查询的高。先查询的高。 屏蔽法程序查询屏蔽法程序查询 移位法程序查询移位法程序查询 硬件优先权排队电路硬件优先权排队电路 编码器与比较器组成的优先权排队电路编码器与比较器组成的优先权排队电路 中断控制器(中断控制器(8259A825
12、9A) 微机原理与接口技术7中断16 (1) (1) 屏蔽法屏蔽法 IN AL,20H TEST AL,80H JNZ POWER TEST AL,40H JNZ DISK TEST AL,02H JNZ INPUT 若有若有8 8个中断源,则将它们的个中断源,则将它们的 中断请求触发器组合起来,作为中断请求触发器组合起来,作为 一个端口,假设端口号为一个端口,假设端口号为20H20H。 7 07 0 电源故障电源故障 磁盘磁盘 打印输出打印输出 键盘输入键盘输入 INTRINTR 20H20H 微机原理与接口技术7中断17 (2) (2) 移位法移位法 XOR AL,AL IN AL,20H
13、 RCL AL,1 JC POWER RCL AL,1 JC DISK 若有若有8 8个中断源,则将它们的个中断源,则将它们的 中断请求触发器组合起来,作为中断请求触发器组合起来,作为 一个端口,假设端口号为一个端口,假设端口号为20H20H。 7 07 0 电源故障电源故障 磁盘磁盘 打印输出打印输出 键盘输入键盘输入 INTRINTR 20H20H 微机原理与接口技术7中断18 软件查询优缺点:软件查询优缺点: 询问次序就是优先级次序,原理简单询问次序就是优先级次序,原理简单 省硬件,中断源优先级可由用户程序灵活确定省硬件,中断源优先级可由用户程序灵活确定 缺点是询问很耽误时间,尤其在中断
14、源很多时缺点是询问很耽误时间,尤其在中断源很多时 1) 优先级编码电路优先级编码电路 微机原理与接口技术7中断19 2 2 接接CPUCPU的的 INTRINTR ABAB 比比 较较 器器 优先权优先权 寄存器寄存器 数据总线数据总线 1 1 优先权优先权 编码组编码组 中断输入中断输入 优先权失效优先权失效 图图 编码器和比较编码器和比较 器的优先权排队电路器的优先权排队电路 微机原理与接口技术7中断20 中断嵌套中断嵌套 主程序主程序 中断服务子程序中断服务子程序1 1 中断服务子程序中断服务子程序2 2 中断断点中断断点1 1 中断断点中断断点2 2 IRET IRET IRET IR
15、ET 中断嵌套条件:中断嵌套条件:1 1、中断、中断1 1的服务程序中,应在保护现场后的服务程序中,应在保护现场后 开中断开中断STISTI; 2 2、当中断、当中断2 2的优先级高于中断的优先级高于中断1 1时,才会发生中断时,才会发生中断 嵌套,否则,不会发生中断嵌套嵌套,否则,不会发生中断嵌套 微机原理与接口技术7中断21 主程序主程序 CPU CPU关中断:关中断:CLICLI 设置中断向量设置中断向量 CPU CPU开中断:开中断:STISTI 等待中断等待中断 l中断服务子程序中断服务子程序 中断子程序名中断子程序名 PROC 属属 性性 保护现场保护现场 STI 恢复现场恢复现场
16、 CLI IRET 中断子程序名中断子程序名 ENDP 微机原理与接口技术7中断22 例例: :类型号为类型号为20H20H的中断服务程序入口符号地址为的中断服务程序入口符号地址为 INT-5,INT-5,中断向量的装入方法。中断向量的装入方法。 中断服务程序框架:中断服务程序框架: INT-5 PROC NEARINT-5 PROC NEAR . . IRET IRET INT-5 ENDP INT-5 ENDP 中断向量指针:中断向量指针:20H20H 4=001 0 00 0000=80H4=001 0 00 0000=80H 20 20H H 4+2=82H4+2=82H 微机原理与接
17、口技术7中断23 用用MOVMOV指令中断向量的装入指令中断向量的装入参考程序参考程序: : CLI PUSH DS PUSH AX XOR AX,AX MOV DS,AX MOV AX,OFFSET INT-5 MOV WORD PTR 080H,AX MOV AX,SEG INT-5 MOV WORD PTR 082H,AX POP AX POP DS STI 微机原理与接口技术7中断24 用串操作,用串操作,中断向量的装入中断向量的装入: CLI CLD PUSH ES XOR AX,AX MOV ES,AX MOV DI,4*20H MOV AX,OFFSET INT-5 STOSW
18、;DI+1DIAX,DI DI+2 MOV AX,SEG INT-5 STOSW POP ES STI 微机原理与接口技术7中断25 中断向量表的修改中断向量表的修改 用用DOSDOS系统功能调用系统功能调用INT 21HINT 21H的的35H35H功能获取功能获取 原中断向量(中断向量原中断向量(中断向量=ES:BX.=ES:BX.类型号类型号 =AL=AL),并保存;),并保存; 用用DOSDOS系统功能调用系统功能调用INT21HINT21H的的25H25H功能设置功能设置 新中断向量(中断向量新中断向量(中断向量=DS:DX.=DS:DX.类型号类型号 =AL=AL);); 用用DO
19、SDOS系统功能调用的系统功能调用的25H25H功能恢复原中断功能恢复原中断 向量。向量。 微机原理与接口技术7中断26 例:用例:用INT21H/35HINT21H/35H设置新中断向量设置新中断向量 CLICLI PUSH DSPUSH DS MOV AL, NMOV AL, N MOV DX, OFFSET INT-SEVMOV DX, OFFSET INT-SEV MOV AX, SEG INT-SEVMOV AX, SEG INT-SEV MOV DS, AXMOV DS, AX MOV AH, 25HMOV AH, 25H INT 21HINT 21H POP DSPOP DS S
20、TISTI 微机原理与接口技术7中断27 思考题思考题 1.1.中断响应周期中,第一个中断响应脉冲信号向外部电路中断响应周期中,第一个中断响应脉冲信号向外部电路 说明什么?第二个脉冲呢?说明什么?第二个脉冲呢? 解:第一个中断响应信号脉冲表示当前中断请求已被解:第一个中断响应信号脉冲表示当前中断请求已被 响应,第二个中断响应信号表示将最高优先级的中断类型响应,第二个中断响应信号表示将最高优先级的中断类型 码放在数据总线上。码放在数据总线上。 2.2.中断向量地址是中断向量地址是 。 3.3.硬件中断可分为硬件中断可分为 两种。两种。 4.8086/80884.8086/8088最多能处理种最多
21、能处理种 中断。中断。 5.5.非屏蔽中断的中断类型码是非屏蔽中断的中断类型码是 。 6.6.对于掉电的处理,对于掉电的处理,8086/80888086/8088是通过是通过 来处理的。来处理的。 中断服务程序入口地址中断服务程序入口地址 非屏蔽中断和可屏蔽中断非屏蔽中断和可屏蔽中断 256256 2 2 非屏蔽中断非屏蔽中断 微机原理与接口技术7中断28 7.7.在下面的中断中,只有在下面的中断中,只有 需要硬件提供中断需要硬件提供中断 类型码。类型码。 A. INTO B. INT n C. NMI D. INTRA. INTO B. INT n C. NMI D. INTR INTOIN
22、TO是指溢出中断,是类型为是指溢出中断,是类型为4 4的内部中断;的内部中断; INT n INT n 是指软件中断,其类型码即为指令中的是指软件中断,其类型码即为指令中的n n ;NMINMI是非屏蔽中断,它的中断类型码为是非屏蔽中断,它的中断类型码为2 2;而只;而只 有可屏蔽中断需要硬件提供中断类型码。有可屏蔽中断需要硬件提供中断类型码。 8.8.在中断响应周期内,将中断标志位在中断响应周期内,将中断标志位IFIF清清0 0是由是由 完成的。完成的。 D D 硬件自动硬件自动 微机原理与接口技术7中断29 7.4 可编程中断控制器 Intel 8259A 8259A8259A的的功能功能
23、: 具有具有8 8级优先权管理级优先权管理, ,可用可用9 9片扩展为片扩展为6464级中断系统级中断系统 接受中断请求,提供中断类型号接受中断请求,提供中断类型号 具有屏蔽与开放中断的功能具有屏蔽与开放中断的功能 可编程选择不同工作方式可编程选择不同工作方式 8259A8259A特点特点: : 具有对中断服务程序入口地址的寻址能力具有对中断服务程序入口地址的寻址能力 单片单片82598259可处理可处理8 8级中断级中断 级联时级联时: :最多可用最多可用9 9片处理片处理6464级中断级中断 8259A8259A的片内的片内寻址寻址 A A0 0=1=1、0,0,用于选择内部不同寄存器用于
24、选择内部不同寄存器 微机原理与接口技术7中断30 VCCVCC A0A0 INTAINTA IR7IR7 IR6IR6 IR5IR5 IR4IR4 IR3IR3 IR2IR2 IR1IR1 IR0IR0 INTINT SP/ENSP/EN CAS2CAS2 CSCS WRWR RDRD D7D7 D6D6 D5D5 D4D4 D3D3 D2D2 D1D1 D0D0 CAS0CAS0 CAS1CAS1 GNDGND 1 1 2828 2 2 27 27 3 3 26 26 4 4 25 25 5 5 24 24 6 6 23 23 7 7 22 22 8 8 21 21 9 9 20 20 10
25、 10 19 19 11 11 18 18 12 12 17 17 13 13 16 16 14 14 1515 双列直插式芯片 28个引脚 数数 据据 总总 线线 外设外设 的的8 8 级中级中 断请断请 求输求输 入入 读信号:状态信息读信号:状态信息 和中断向量和中断向量 写信号:初始化命写信号:初始化命 令字和操作命令字令字和操作命令字 向向CPUCPU发送中发送中 断请求信号断请求信号 中断响中断响 应信号应信号 地址线地址线 级联信号:用于连级联信号:用于连 接主从芯片完成多接主从芯片完成多 片间的信息传输片间的信息传输 主从设备选择控制主从设备选择控制 信号信号/ /允许缓冲线允
26、许缓冲线 微机原理与接口技术7中断31 IRR:IRR:用于保存用于保存IR0IR7IR0IR7的中断请求,的中断请求,Di=1Di=1:IRiIRi有中断请求有中断请求 ISRISR:用于存放正在被服务的中断源,:用于存放正在被服务的中断源, Di=1 Di=1: IRi IRi正在被服务正在被服务 IMRIMR:用于存放对应中断请求信号的屏蔽状态,:用于存放对应中断请求信号的屏蔽状态, Di=1 Di=1: IRi IRi被禁止被禁止 微机原理与接口技术7中断32 有有请求输入请求输入时,将时,将IRRIRR相应位置位;相应位置位; 经经IMRIMR屏蔽电路处理后(屏蔽电路处理后(IRRI
27、RR与与IMRIMR相与),送相与),送PRPR; PRPR检测出最高的中断请求位,并经嵌套处理考虑是否发送检测出最高的中断请求位,并经嵌套处理考虑是否发送INTINT; 若可发若可发INTINT信号,则控制逻辑将信号,则控制逻辑将INTINT信号送给信号送给CPUCPU的的INTRINTR引脚引脚 若若CPUCPU处在处在开中断开中断,则在当前,则在当前指令完成指令完成后,发两个后,发两个INTAINTA信号;信号; 8259A8259A接到第一个接到第一个INTAINTA信号后,使信号后,使ISRISR位置位,位置位,IRRIRR相应位复位;相应位复位; CPUCPU启动另一个响应周期,输
28、出第二个启动另一个响应周期,输出第二个INTAINTA脉冲,脉冲,8259A8259A 向数据总线送出向数据总线送出中断类型码中断类型码;同时,;同时,CPUCPU取出此向量乘以取出此向量乘以4 4, 得到中断服务程序的入口地址;得到中断服务程序的入口地址; 中断响应周期完成,中断响应周期完成,CPUCPU执行中断服务程序,执行中断服务程序,8259A8259A工作工作 在自动结束在自动结束AEOIAEOI或普通结束或普通结束EOIEOI模式下,使模式下,使ISRISR清清0 0。 微机原理与接口技术7中断33 假设:假设:8259A8259A的端口地址为:的端口地址为:20H,21H,20H
29、,21H,某某8 8位位CPUCPU 和和 8259A8259A的地址线如何连接的地址线如何连接? ? 地址地址 译码译码 CPUCPU D D7 7DD0 0 A7A1A7A1 D D7 7DD0 0 A A0 0 A A0 0 INTAINTA INTRINTR INTAIINTAI NTNT 82598259 IRIR0 0 IRIR7 7 CSCS A A7 7 A A0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 20H20H 0 0 1 0 0 0 0 0 0 1 0 0 0 0 1 1 21H21H 微机原理与接口技术7中断34 分为分为3 3类类 (1
30、1)中断触发方式)中断触发方式 (2 2)中断优先权管理方式:)中断优先权管理方式:中断屏蔽方式中断屏蔽方式 设置优先权方式设置优先权方式 中断结束处理方式中断结束处理方式 (3 3)连接系统总线方式)连接系统总线方式 微机原理与接口技术7中断35 1.中断触发方式中断触发方式(此方式由此方式由ICW1ICW1来设置来设置) ) (1)(1)边沿触发方式:边沿触发方式: 上升沿触发,要求高电平信上升沿触发,要求高电平信 号具有一定的宽度,可避免毛刺现象引发的中断号具有一定的宽度,可避免毛刺现象引发的中断 误判误判 (2)(2)电平触发方式电平触发方式: : 当中断输入端持续出现当中断输入端持续
31、出现2 2个脉冲的高电平,表个脉冲的高电平,表 示有示有1 1个中断请求,当该请求得到响应后,输入端个中断请求,当该请求得到响应后,输入端 必须及时撤除高电平,否则引发第二次中断。必须及时撤除高电平,否则引发第二次中断。 (3)(3)中断查询方式中断查询方式: :CPUCPU用软件查询用软件查询, ,通过读取查询通过读取查询 字来确认是否有中断产生字来确认是否有中断产生 微机原理与接口技术7中断36 2.中断屏蔽方式中断屏蔽方式 (1 1)普通屏蔽方式)普通屏蔽方式 用用OCW1OCW1命令将中断屏蔽寄存器命令将中断屏蔽寄存器IMR的相应位置的相应位置 “1 1”。高优先级的中断才能中止低优先
32、级的中断高优先级的中断才能中止低优先级的中断 (2 2)特殊屏蔽方式)特殊屏蔽方式 用于中断处理程序中。当要允许优先级低的中用于中断处理程序中。当要允许优先级低的中 断进入断进入, ,可采用特殊屏蔽方式可采用特殊屏蔽方式. . 可用可用OCW3OCW3的的D D6 6D D5 5=11=11设置设置, 用用OCW1OCW1命令将中断命令将中断 屏蔽寄存器屏蔽寄存器IMR的相应位置的相应位置“1 1”,同时将,同时将ISRISR对对 应位清应位清“0 0”。此时除此时除IMRIMR中置中置1 1位对应的中断被屏位对应的中断被屏 蔽外蔽外, ,其它置其它置0 0位对应的中断无论优先级高低都可位对应
33、的中断无论优先级高低都可 得到响应。得到响应。 微机原理与接口技术7中断37 3. 优先级的管理方式优先级的管理方式: 一般全嵌套方式一般全嵌套方式 特殊全嵌套方式特殊全嵌套方式 优先级自动循环方式优先级自动循环方式 优先级特殊循环方式优先级特殊循环方式 微机原理与接口技术7中断38 (1)(1)全嵌套方式:全嵌套方式: 8259A默认工作方式默认工作方式. 特点特点:在全嵌套方式中,中断请求按在全嵌套方式中,中断请求按固定优先级固定优先级IR0IR7 进行处理,进行处理,IR0级中断的优先级最高。级中断的优先级最高。 当一个中断被响应时,中断类型码被放到数据总线 当一个中断被响应时,中断类型
34、码被放到数据总线 上,上,ISR中的对应位中的对应位ISn被置被置1,然后进入中断服务程序。然后进入中断服务程序。 一般情况下(除了中断自动结束方式外),一般情况下(除了中断自动结束方式外),在在CPU发出发出 中断结束命令(中断结束命令(EOI)前,此对应位一直保持)前,此对应位一直保持“1”,需,需 使使AEOI=0。仅级别高的中断才能中断级别低的中断仅级别高的中断才能中断级别低的中断。 (2)(2)特殊全嵌套方式特殊全嵌套方式 用途用途:多片级联方式多片级联方式, 特殊全嵌套方式仅设置在主片中特殊全嵌套方式仅设置在主片中. 特点特点: 和全嵌套方式基本相同和全嵌套方式基本相同,不同的是不
35、同的是:在处理中断时在处理中断时, 可响应同级中断可响应同级中断,从而实现对同从而实现对同 级中断请求的特殊嵌套级中断请求的特殊嵌套. 思考题:当有思考题:当有3 3片片8259A8259A级联时,主片采用特殊全嵌套方式,级联时,主片采用特殊全嵌套方式, 从片采用全嵌套方式,其中断的优先级顺序应该为?从片采用全嵌套方式,其中断的优先级顺序应该为? 微机原理与接口技术7中断39 (3)(3)优先级自动循环方式优先级自动循环方式: :(由(由OCW2决定)决定) 用途用途:多个中断源优先级相等的场合。多个中断源优先级相等的场合。 特点特点:优先级是在变化的优先级是在变化的。优先权初始化顺序为优先权
36、初始化顺序为 IR0IR7,一个设备中断被响应后,一个设备中断被响应后, 其优先级自动其优先级自动 降为最低,比它低一级的中断降为最低,比它低一级的中断源优先级升到最高源优先级升到最高 。 如:如: IR4中断请求被响应后,此方式下,中断优先级自动变中断请求被响应后,此方式下,中断优先级自动变 为:为:IR5 IR6 IR7 IR0 IR1 IR2 IR3 IR4 (4) (4)优先级特殊循环方式优先级特殊循环方式 与优先级自动循环方式不同点:用户用程序指与优先级自动循环方式不同点:用户用程序指 定初始的最低优先级的中断源。定初始的最低优先级的中断源。例如设置例如设置IRi为最低为最低 优先级
37、,则最高优先级为优先级,则最高优先级为IRi+1,其它各级按循环方,其它各级按循环方 式类推式类推。 微机原理与接口技术7中断40 4.中断结束处理的方式中断结束处理的方式 中断自动结束方式中断自动结束方式 一般的中断结束方式一般的中断结束方式 特殊的中断结束方式特殊的中断结束方式 微机原理与接口技术7中断41 (1 1)中断自动结束方式:)中断自动结束方式: 用于系统中只有一片用于系统中只有一片8259A8259A,多个中断不会嵌,多个中断不会嵌 套的情形。系统一进入中断处理,就将当前中断服套的情形。系统一进入中断处理,就将当前中断服 务寄存器务寄存器ISRISR的对应位清除。对的对应位清除
38、。对8259A8259A来说,好像已来说,好像已 经结束了当前中断。经结束了当前中断。 在命令字在命令字ICW4ICW4中将中将AEOIAEOI(D1D1)位置)位置“1 1”。 (2 2)普通的中断结束方式)普通的中断结束方式( (非自动非自动EOI)EOI): 用在全嵌套的情形。用在全嵌套的情形。CPUCPU用用OUTOUT指令往指令往82598259A A偶偶 地址地址发一个发一个EOIEOI命令,命令,82598259A A将使将使ISRISR中优先级别最中优先级别最 高的非零位高的非零位( (正在服务的最高优先级正在服务的最高优先级) )清零清零。结束当结束当 前正在处理的中断。前正
39、在处理的中断。用操作命令字用操作命令字OCW2OCW2中的中的R=0 , R=0 , SL=0, EOI=1 SL=0, EOI=1 的设置来实现。的设置来实现。 在命令字在命令字OCW2=OCW2=0010010000B=20H0000B=20H 微机原理与接口技术7中断42 (3 3)特殊的中断结束方式)特殊的中断结束方式( (非自动非自动EOI)EOI) 在非全嵌套方式下,通过向在非全嵌套方式下,通过向8259A8259A发一条特殊发一条特殊 中断结束命令来判断要清除中断结束命令来判断要清除ISRISR中置中置1 1位中的位中的哪哪 一位。一位。 用操作命令字用操作命令字OCW2OCW2
40、中的中的R=0, SL=1, EOI=1 R=0, SL=1, EOI=1 的的 设置来实现,此时设置来实现,此时OCW2OCW2中的中的L2L2、L1L1、L0L0这这3 3位位 指出了到底要清除指出了到底要清除ISRISR中的哪一位。中的哪一位。 OCW2=01100L2L1L0 往偶地址端口输出往偶地址端口输出OCW2OCW2命令。命令。 OCW2OCW2中:中:EOI=1EOI=1、SL=1SL=1、R=0R=0是特殊中断结束是特殊中断结束 命令。命令。 微机原理与接口技术7中断43 5.5.连接系统总线方式连接系统总线方式 (1)(1) 缓冲方式:缓冲方式: 8259A8259A通过
41、通过总线驱动器总线驱动器和数据总线相连,这就是缓和数据总线相连,这就是缓 冲方式。冲方式。 用于多片用于多片8259A8259A级联时,此时主片级联时,此时主片SP/ENSP/EN作为总线驱作为总线驱 动器的启动信号连接到动器的启动信号连接到CECE端,从片端,从片SP/ENSP/EN控制数据的方向控制数据的方向 。 (2)(2) 非缓冲方式:非缓冲方式: 当系统中只有单片当系统中只有单片8259A8259A时,一般将它直接与数据总线时,一般将它直接与数据总线 相连。或者相连。或者8259A8259A片数不多的情况下,也可直接与数据总片数不多的情况下,也可直接与数据总 线相连。线相连。 单片时
42、,单片时,8259A SP/EN8259A SP/EN接高电平;多片时,主片接高电平;多片时,主片SP/ENSP/EN 接高电平,从片接高电平,从片SP/ENSP/EN接低电平接低电平 微机原理与接口技术7中断44 8259A缓冲方式下级连结构缓冲方式下级连结构 B7B0 T 74LS245 OE A7A0 DT/R INTR DEN 局部数据总线 B7B0 T 74LS245 OE A7A0 SP/EN D7D0 从控B CAS2-0 INTA INT SP/EN D7D0 从控A CAS2-0 INTA INT SP/EN D7D0 主控制器 INT IR5 IR6 INTA CAS2-0
43、 +5V 1k B7B0 OE 74LS245 T A7A0 +5V 1k +5V 1k 系统数据总线 INTA 微机原理与接口技术7中断45 8259A非缓冲方式下级连结构非缓冲方式下级连结构 地址总线 控制总线 数据总线 CS A0 DB INTA INT CAS0 8259A 从控 A CAS1A CAS1 CAS2 SP/EN IRQ7 IRQ0 CS A0 DB INTA INT CAS0 CAS1 8259A主控 CAS2 IRQ7 IRQ0 SP/EN 7 6 5 4 3 2 1 0 CS A0 DB INTA INT CAS0 8259A 从控 B CAS1 CAS2 SP/E
44、N IRQ7 IRQ0 GND 7 6 5 4 3 2 1 0 GND 7 6 5 4 3 2 1 0 VCC 7 6 5 4 3 2 1 0 CS A0 DB INTA INT CAS0 8259A 从控 B CAS1 CAS2 SP/EN IRQ7 IRQ0 CS A0 DB INTA INT CAS0 8259A 从控 B CAS1 CAS2 SP/EN IRQ7 IRQ0 CS A0 DB INTA INT CAS0 8259A 从控 B CAS1 CAS2 SP/EN IRQ7 IRQ0 CS A0 DB INTA INT CAS0 8259A 从控 B CAS1B CAS1 CAS
45、2 SP/EN IRQ7 IRQ0 微机原理与接口技术7中断46 3 3 6 6 1#1#从片从片挂在挂在主片主片的的IR6 IR6 , 2#2#从片从片挂在挂在主片主片的的IR3IR3 ? 微机原理与接口技术7中断47 主片:主片: IR3有申请有申请 IRR:0000 1000 ISR:0000 1000 主片向主片向CPU发发INTR信信 号号 CPU发响应信号发响应信号INTA 主片收到主片收到INTA 主片向从片送识别码主片向从片送识别码: CAS0CAS2=011 在在2#2#从片:从片: 若若IR5有申请有申请 IRR: 0010 0000 ISR: 0010 0000 向主片发
46、向主片发INT信号信号 2#从片与识别码一致从片与识别码一致 2#从片通过数据总线从片通过数据总线 送出中断类型码送出中断类型码 微机原理与接口技术7中断48 7 7 中断查询工作方式中断查询工作方式 与前面所讲与前面所讲8259A8259A工作在向量中断方式不同,工作在向量中断方式不同,查询中断工作查询中断工作 方式方式具有以下特点:具有以下特点: 外设的中断请求信号送入外设的中断请求信号送入8259A8259A,但是,但是8259A8259A不使用不使用INTINT 引脚向引脚向CPUCPU发送中断请求发送中断请求 CPUCPU的的IF=0IF=0,即使得,即使得CPUCPU不会响应不会响
47、应INTINT引脚上产生的中断引脚上产生的中断 CPUCPU通过软件定期或循环查询通过软件定期或循环查询8259A8259A的状态(的状态(读入查询读入查询 字字)来确认中断源)来确认中断源 8259A8259A外设外设CPUCPU 中断中断查询查询 微机原理与接口技术7中断49 8259A8259A的的初始化命令字:初始化命令字:ICWi (i=14) ICW1 ICW1:芯片控制初始化命令字芯片控制初始化命令字 ICW2ICW2:中断类型码设置中断类型码设置 ICW3ICW3:用于级联,主片用于级联,主片/ /从片的初始化命令字从片的初始化命令字 ICW4ICW4:方式控制初始化命令字方式
48、控制初始化命令字 微机原理与接口技术7中断50 (1 1)ICW1ICW1(A A0 0=0=0)芯片控制初始化命令芯片控制初始化命令 ICW1 ICW1必须写入必须写入偶偶地址端口中。地址端口中。 D7D5: 在系统中不用,为在系统中不用,为1为为0都可以,是都可以,是A7A5 。 D4 : 设置为设置为1,指示指示ICW1的标志。的标志。 D3(LTIM) =1,表示中断请求为电平触发方式,表示中断请求为电平触发方式, =0,表示中断请求为边沿触发方式。,表示中断请求为边沿触发方式。 D2(ADI): 在在8086/8088中不起作用。中不起作用。 D1(SNGL): 指出指出8259A有
49、否级联。有否级联。 =1,表示系统中有一片,表示系统中有一片8259A,不需写不需写ICW3 =0,表示系统中有多片,表示系统中有多片8259A,需要写需要写ICW3 D0(IC4): 指出后面是否设置指出后面是否设置ICW4。使用。使用ICW4时时 D0必须为必须为1。 LTIMADIADISNGLSNGLIC4IC410 00 00 0 D7 D6 D5 D4 D3 D7 D6 D5 D4 D3 D2 D1 D0D2 D1 D0 微机原理与接口技术7中断51 (2 2)ICW2(AICW2(A0 0=1)=1)中断类型码的设置中断类型码的设置 ICW2ICW2写入写入8259A8259A的
50、的奇奇地址端口。地址端口。 T7T3T7T3:设置中断类型码的高:设置中断类型码的高5 5位,低位,低3 3位可以为位可以为0 0 D2D0D2D0:由中断请求引脚:由中断请求引脚IRIR的编号自动插入的编号自动插入 T3T3T4T6T6T5T5T7T7 D7 D6 D5 D4 D3 D7 D6 D5 D4 D3 D2 D1 D0D2 D1 D0 解:解: ICW1= 0001 0011B ICW1= 0001 0011B ICW2= 0000 1000BICW2= 0000 1000B MOV AL,00010011BMOV AL,00010011B OUT 20H,ALOUT 20H,AL
51、 MOV AL,00001000BMOV AL,00001000B OUT 21H,ALOUT 21H,AL 例例1:1: 8259A8259A采用前沿触发,单片使用,需要采用前沿触发,单片使用,需要ICW4 ICW4 , 假设假设IR0IR0的类型码为的类型码为08H,08H,试确定试确定ICW1,ICW2ICW1,ICW2。 已知已知8259A8259A端口地址端口地址: 20H,21H: 20H,21H 微机原理与接口技术7中断52 8259A8259A的的ICW2ICW2设置了中断类型码的设置了中断类型码的 哪几位?试说明对哪几位?试说明对8259A8259A的的ICW2ICW2分别设
52、置为分别设置为: : 30H30H、38H38H、36H36H时有什么差别?时有什么差别? 8259A8259A的的ICW2ICW2设置了中断类型码的设置了中断类型码的 D7D7D3D3位。位。 30H30H和和36H36H对应的高对应的高5 5位相同,均为:位相同,均为: 0011000110,表示中断类型码区别于低,表示中断类型码区别于低3 3位;位; 而而38H38H的高的高5 5位为:位为:0011100111,与前面,与前面 的两者不可能是同片的两者不可能是同片82598259中断。中断。 微机原理与接口技术7中断53 (3)(3)初始化命令字初始化命令字ICW3: ICW3: 级联
53、方式结构级联方式结构 需要分别对主片和从片进行设置需要分别对主片和从片进行设置 微机原理与接口技术7中断54 (3 3)ICW3(AICW3(A0 0=1)=1)级连方式的设置级连方式的设置 ICW3写入写入8295A的的奇奇地址端口。地址端口。 主片主片ICW3的格式的格式:指出主指出主8259哪个引脚连有从哪个引脚连有从 8259,对应位置,对应位置1。 从片从片ICW3的格式的格式:指出从片指出从片8259 连在主连在主8259哪哪 个引脚上,由个引脚上,由D2D1D0指出。指出。 D7D6D5D4D3 D2D1D0 0 0 0 0 0 ID2 ID1ID0 IR3IR3IR2IR2IR
54、1IR1IR0IR0IR4IR6IR6IR5IR5IR7IR7 D7 D6 D5 D4 D3 D7 D6 D5 D4 D3 D2 D1 D0D2 D1 D0 主片主片 从片从片 微机原理与接口技术7中断55 例例2:现有一主片现有一主片8259A的的IR3和和IR6接了接了2个从片。个从片。 主片端口地址主片端口地址: 20H,21H;1#从片端口地址从片端口地址:A0H,A1H 试设置试设置ICW3。 主片主片: ICW3= 0: ICW3= 01 100 00 1 1000 000 =48H=48H 从片从片1#: ICW3= 0000 01#: ICW3= 0000 0011 011 =
55、03H=03H 从片从片2#: ICW3= 0000 02#: ICW3= 0000 0110 110 =06H=06H 主片主片ICW3ICW3的初始化程序段的初始化程序段: : MOV AL,48H MOV AL,48H OUT OUT 21H,AL21H,AL 1#1#从片从片ICW3ICW3的初始化的初始化: : MOV AL,03H MOV AL,03H OUT OUT 0A1H,AL0A1H,AL 解:解: 微机原理与接口技术7中断56 (4) ICW4(4) ICW4的格式(的格式(A A0 0=1=1) ICW4为方式控制初始化命令字,写入为方式控制初始化命令字,写入奇奇地址端
56、口。地址端口。 SFNM: =0,一般全嵌套方式一般全嵌套方式; =1,特殊全嵌套方式特殊全嵌套方式(Specific Full Nested Mode) BUF: =0,非缓冲方式非缓冲方式; =1,缓冲方式缓冲方式(buffered) M/S: 主片主片(Master)/从片从片(Slave) 若若BUF=1,M/S=1,作主片作主片,M/S=0,作从片作从片 BUF=0,M/S无意义无意义 AEOI: =0,中断非自动结束中断非自动结束; =1,中断自动结束中断自动结束(Automatic End Of Interrupt) uPM: =0,用于用于8位机位机;=1,用于用于16位机位机
57、 D7D6D5D4D3D2D1D0 0 0 0 SFNM BUF M/S AEOI uPM 微机原理与接口技术7中断57 8259A的工作命令字:的工作命令字:OCWi (i=13) OCW1:中断屏蔽命令字;:中断屏蔽命令字; OCW2:优先级循环方式和中断结束方式;:优先级循环方式和中断结束方式; OCW3:查询方式:查询方式,特殊屏蔽方式特殊屏蔽方式,读状态等。读状态等。 在对在对8259A8259A进行了初始化编程后,芯片已经进行了初始化编程后,芯片已经 作好接收中断请求的输入准备。作好接收中断请求的输入准备。 在在8259A8259A工作期间若需要改变工作期间若需要改变8259A82
58、59A的工作方的工作方 式,可由式,可由CPUCPU发送操作命令字发送操作命令字OCWOCW进行控制。进行控制。 微机原理与接口技术7中断58 (1 1)OCW1OCW1的格式(的格式(A A0 0=1=1) OCW1OCW1称为屏蔽命令字,写入称为屏蔽命令字,写入8259A8259A的的奇奇地址端口。地址端口。 当当OCW1OCW1某位某位= =1 1,表示对应的中断请求,表示对应的中断请求被屏蔽被屏蔽。 D7D6D5D4D3D2D1D0 M7M6M5M4M3M2M1M0 微机原理与接口技术7中断59 用于设置优先级循环方式和中断结束方式用于设置优先级循环方式和中断结束方式 , 写入写入偶偶
59、地址单元。地址单元。 D4D3: =00,特征位特征位 D7(R): =1,优先级循环方式;,优先级循环方式;R=0,固定方式。,固定方式。 D5(EOI): =1,普通,普通EOI方式。在中断服务完毕,发中断结方式。在中断服务完毕,发中断结 束命令,使当前束命令,使当前ISR的最高优先权的的最高优先权的ISn复位。复位。 D5(EOI): =0,未定义。,未定义。 D6(SL): =1,用,用L2、L1、L0指定中断等级。指定中断等级。 在在ICW4中,若中,若AEOI=1,自动清除当前,自动清除当前ISn。 AEOI=0, ISn要用要用EOI清除。清除。 (2 2)OCW2OCW2的格式
60、(的格式(A A0 0=0=0) D7D6D5D4D3D2D1D0 R SLEOI 0 0L2L1L0 微机原理与接口技术7中断60 OCWOCW2 2的的R R、SLSL、EOIEOI格式格式 D7 D6 D5 微机原理与接口技术7中断61 D D7 7 D D6 6 D D5 5 =001 =001 : :使当前最高优先级的正在服务使当前最高优先级的正在服务ISRISR 位清位清0 0。 例例1:1:普通普通EOIEOI命令命令 . . . ( . (中断服务程序中断服务程序) ) . . MOV ALMOV AL,00100000B00100000B OUT 20H OUT 20H,AL
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 矿山绿色通风智能技术创新与瓦斯治理技术创新总结报告
- 商场医闹事件应急预案演练脚本
- 经开区项目屋面柔性防水层施工方案-作业方案
- 图书馆项目EPC总承包采购管理方案
- 中级焊工满4年才能考高级?工龄10年其实也能报
- 饭店食物中毒应急预案演练脚本
- 恒美智造磷酸盐检测仪:水质磷污染精准管控的核心技术装备研究
- 《Python数据分析》高职全套教学课件
- 2026年陕西省物业管理师《物业管理实务》试卷及答案
- 综合健身馆功能区二次装修施工方案
- 工艺纪律检查方案
- 汽车维修管理制度大全
- 信息系统运维项目投标方案模板
- 2026年《关于用好乡镇(街道)履行职责事项清单的具体措施》宣导课件
- 2026中国功能性食品原料科学认证与消费者认知调研
- 2026年初级注册安全工程师《安全生产专业实务(其他安全)》真题试卷(附答案解析)
- 胆南星临床应用现状
- 原材料采购价格监督制度
- 方言词汇调查条目表
- 半月板与关节软骨损伤临床指南
- 2023年版人教版高一必修第一册物理测试题(含答案)
评论
0/150
提交评论