微机原理16.§7.4 8259A.ppt

上传人:苏美尔 文档编号:8916047 上传时间:2021-01-24 格式:PPT 页数:32 大小:596.50KB
返回 下载 相关 举报
微机原理16.§7.4 8259A.ppt_第1页
第1页 / 共32页
微机原理16.§7.4 8259A.ppt_第2页
第2页 / 共32页
微机原理16.§7.4 8259A.ppt_第3页
第3页 / 共32页
微机原理16.§7.4 8259A.ppt_第4页
第4页 / 共32页
微机原理16.§7.4 8259A.ppt_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《微机原理16.§7.4 8259A.ppt》由会员分享,可在线阅读,更多相关《微机原理16.§7.4 8259A.ppt(32页珍藏版)》请在三一文库上搜索。

1、1,7.4 可编程序中断控制器8259A,第七章 中断,一、8259A内部结构,8259A可编程中断控制器(PIC)可管理8级硬件中断,使用9片8259A构成主从级联形式,可管理64级中断。,1. 8259A内部结构,8259A的结构如图所示,由中断请求寄存器(IRR)、中断服务寄存器(ISR)、中断屏蔽寄存器(IMR)、优先权判别器(PR)、数据总线缓冲器、读写电路以及级联缓冲/比较器等组成。,(分为8部分),2,7.4 可编程序中断控制器8259A,一、8259A内部结构,3,各部分功能如下:,一、8259A内部结构,7.4 可编程序中断控制器8259A,4,一、8259A内部结构,7.4

2、 可编程序中断控制器8259A,5,一、8259A内部结构,7.4 可编程序中断控制器8259A,6,2. 8259A引脚信号,8259A是一个使用+5V电源的28脚双列直插芯片。,一、8259A内部结构,7.4 可编程序中断控制器8259A,7,一、8259A内部结构,7.4 可编程序中断控制器8259A,8,二、8259A的工作过程,1. 接收IR0IR7的请求,IRR对应位置1;,7.4 可编程序中断控制器8259A,9,二、8259A工作过程, ISR相应位置1;, IRR相应位清0。, 中断类型码送CPU;, 如果工作在自动结束方式,清ISR对应位。,7.4 可编程序中断控制器825

3、9A,10,三、8259A的工作方式,1. 设置优先级的方式, 全嵌套方式,固定优先级,0级最高,7级最低,其余类推,可响应更高级别的中断。, 特殊全嵌套方式,和全嵌套方式基本相同,只有一点不一样,就是在特殊全嵌套方式下,当处理某一中断时,如果有同级的中断请求,也会给予响应。一般用于级联的主片。,7.4 可编程序中断控制器8259A,11, 优先级自动循环方式,一般用在系统中多个中断源优先级相等的场合。在此方式下,优先级队列是变化的,一个设备执行中断后,其优先级自动降为最低。,三、8259A工作方式, 优先级特殊循环方式,和优先级自动循环方式比,只有一点不同,即在此方式下,开始的最低优先级由编

4、程决定。,7.4 可编程序中断控制器8259A,12,2. 屏蔽中断源的方式, 普通屏蔽方式,通过设置使中断屏蔽寄存器某一位置1,就屏蔽了某一级中断。, 特殊屏蔽方式,通过设置使IMR某一位置1,同时清零ISR的对应位,以便屏蔽本级,开放较低级。,三、8259A工作方式,6.4 可编程序中断控制器8259A,13,3. 结束中断的方式, 自动结束方式,三、8259A工作方式, 非自动结束方式, 一般中断结束方式,用于全嵌套方式,通过写OCW2,使其EOI=1,SL=0,R=0实现。这时ISR中优先权最高的位清0,结束当前正在处理的中断。,7.4 可编程序中断控制器8259A,14, 特殊中断结

5、束方式,用于非全嵌套方式,发特殊中断结束命令。写OCW2使其EOI=1,SL=1,R=0即可,此时由L2、 L1 、L0三位指出Isi。,三、8259A工作方式,级连方式下,一般不用中断自动结束方式,而用非自动结束方式。不管用那一种非自动结束方式,都必须连发两次中断结束命令,一次对主片,一次对从片。,7.4 可编程序中断控制器8259A,15,4. 连接系统总线的方式, 缓冲方式,在多片8259A级联的大系统中,8259A通过总线驱动器和系统总线相连,此即缓冲方式。,三、8259A工作方式, 非缓冲方式,单片8259A或一些不太大的系统中,8259A与系统总线直接相连,此即非缓冲方式。,7.4

6、 可编程序中断控制器8259A,16,5. 中断触发方式, 边沿触发方式,中断请求输入端的上升沿作为中断请求信号。, 电平触发方式,中断请求输入端的高电平作为中断请求信号。,三、8259A工作方式, 中断查询方式,利用软件查询中断源。,7.4 可编程序中断控制器8259A,17,四、8259A编程,8259A有两个端口地址,一个偶地址(A0=0),一个奇地址(A0=1) ,并假定偶地址较低,奇地址较高。,8259A工作时先初始化,给8259A设置初始化命令字(ICWi),然后8259A自动开始工作;工作过程中,可通过操作命令字(OCWi) 动态改变8259A的操作和控制方式。,7.4 可编程序

7、中断控制器8259A,18,1. 初始化命令字,四、8259A编程,8259A的初始化命令字共4个(ICW1ICW4),其中ICW1和ICW2必须设置, ICW3级联时才需要, ICW4只在8086/8088系统中需要设置,其设置流程如右图所示。,初始化命令字必须按顺序写入。通常它在系统启动过程中即已完成,而且在系统整个工作期间保持不变。,7.4 可编程序中断控制器8259A,19,四、8259A编程, ICW1,芯片控制初始化命令字,写入偶地址端口(A0=0),其格式如下:,7.4 可编程序中断控制器8259A,20,设置中断类型码,写入奇地址端口(A0=1),其格式如下:,四、8259A编

8、程, ICW2,最低3位为IR的编码。,7.4 可编程序中断控制器8259A,21,四、8259A编程, ICW3,主/从片初始化命令字,只对级联方式有效,写入奇地址端口(A0=1),其格式如下:, 对主片,说明IRi的连接情况。, 对从片,说明该片连到主片的哪个端。,7.4 可编程序中断控制器8259A,22,四、8259A编程, ICW4,方式控制命令字,8086/8088必须设置,写入奇地址端口(A0=1),其格式如下:,7.4 可编程序中断控制器8259A,23,四、8259A编程,某系统中8259A单级使用,端口地址为80H,81H,初始化命令如下:,例:,MOVAL, 13H OU

9、T80H, AL MOVAL, 18H OUT81H, AL MOVAL, 0DH OUT81H, AL,;00010011:边沿触发,单片,需ICW4 ;ICW1 ;类型码为18H1FH ;ICW2 ;00001101:8086系统,非自动EOI,主片,缓冲方式,普通全嵌套 ;ICW4,7.4 可编程序中断控制器8259A,24,四、8259A编程,2. 操作命令字,8259A有3个操作命令字(OCW1OCW3),在应用程序内部设置,可多次写入。设置时次序上没有严格要求,但端口有严格规定,OCW1为奇地址,OCW2和OCW3为偶地址。, OCW1,中断屏蔽命令字,写入奇地址端口(A0=1),

10、其格式如下:,若某位为1,则该位中断请求被屏蔽。,7.4 可编程序中断控制器8259A,25,四、8259A编程, OCW2,优先级循环方式及中断结束方式命令字,写入偶地址端口(A0=0),其格式如下:,EOI:中断结束方式位,为1则清ISR的对应位ISi,SL:决定L2、L1、L0是否有效,为1则有效,否则无效,7.4 可编程序中断控制器8259A,26,四、8259A编程, OCW3,写入偶地址端口(A0=0),其格式如下:,7.4 可编程序中断控制器8259A,27,四、8259A编程,中断状态字的格式如下:,读IRR及ISR时,从偶地址端口读取。,若要读IMR,可通过输入指令,直接从奇

11、地址端口读取,而与OCW3无关。,7.4 可编程序中断控制器8259A,28,四、8259A编程,两个端口如何对应7条命令?,偶地址:ICW1,OCW2,OCW3,奇地址:ICW2,ICW3,ICW4,OCW1,按顺序,一定先有ICW1,然后决定:,ICW2,ICW3,ICW4,顺序 级联 D0,没有执行过ICW1的奇地址则为OCW1,7.4 可编程序中断控制器8259A,29,五、8259A应用举例,某系统中设置两片8259A实现中断控制,它们之间采用级联方式连接,如下图所示:,7.4 可编程序中断控制器8259A,30,IR0,IR5上引入外部中断请求,类型码分别为40H,45H,入口地址

12、分别为1000H:1050H, 1000H:2060H,IR2,IR3上引入外部中断请求,类型码分别为32H,33H,入口地址分别为2000H:5440H, 2000H:3620H,从8259A的INT连接主8259A的IR3,主片:,从片:,级联:,假设主片的端口地址为FFE8H,FFE9H,从片的端口地址为FFFAH,FFFBH。,先填写中断矢量表,然后分别对主、从片进行初始化操作。,思路:,五、8259A应用举例,7.4 可编程序中断控制器8259A,31,主8259A初始化程序段如下:,MOVAL, 11H MOVDX, 0FFE8H OUTDX, AL MOVAL, 40H INCD

13、X OUTDX, AL MOVAL, 08H OUTDX, AL MOVAL, 11H OUTDX, AL MOVAL, 0D6H OUTDX, AL MOVAL, 20H DECDX OUTDX, AL,;ICW1 ;ICW2 ;ICW3 ;ICW4 ;OCW1 ;OCW2,五、8259A应用举例,7.4 可编程序中断控制器8259A,32,从8259A初始化程序段如下:,MOVAL, 11H MOVDX, 0FFFAH OUTDX, AL MOVAL, 30H INCDX OUTDX, AL MOVAL, 03H OUTDX, AL MOVAL, 11H OUTDX, AL MOVAL, 0F3H OUTDX, AL MOVAL, 20H DECDX OUTDX, AL,;ICW1 ;ICW2 ;ICW3 ;ICW4 ;OCW1 ;OCW2,作业: 4、5、7题 8为思考题,五、8259A应用举例,7.4 可编程序中断控制器8259A,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1