1、 注意:寄存器注意:寄存器ICW1ICW1ICW4ICW4和和OCW1OCW1OCW3OCW3只占用两个只占用两个I/OI/O端端口地址(奇地址和偶地址),由引脚口地址(奇地址和偶地址),由引脚A0A0的输入信号来选择。的输入信号来选择。4.中断查询方式中断查询方式 查询方式可用来查询查询方式可用来查询8259A是否有中断请求正在被是否有中断请求正在被处理。如果有,则给出当前处理的最高优先级是哪一级。处理。如果有,则给出当前处理的最高优先级是哪一级。6.中断触发方式中断触发方式 8259A的的IRQi引脚上出现引脚上出现上升沿上升沿信号表示有中断请求。信号表示有中断请求。边沿触发方式边沿触发方
2、式 电平触发方式电平触发方式 8259A的的IRQi引脚上出现引脚上出现高电平高电平信号表示有中断请求。信号表示有中断请求。上升沿上升沿偶地址偶地址上升沿上升沿(偶地址偶地址)1:被屏:被屏;0:未屏:未屏M0M1M2M3M4M5M6M71A0 D7 D6 D5 D4 D3 D2 D1 D0是否是否R SLEOI功功 能能001普通普通EOI命令命令,全嵌套方式全嵌套方式 011特殊特殊EOI命令,全嵌套,命令,全嵌套,L2L1L0指定指定ISR位清零位清零 101普通普通EOI命令,优先级自动循环命令,优先级自动循环 111普通普通EOI命令,优先级特殊循环命令,优先级特殊循环 100自动自
3、动EOI时,优先级自动循环时,优先级自动循环 000自动自动EOI时,取消优先级自动循环时,取消优先级自动循环 110优先级特殊循环,优先级特殊循环,L2L1L0指定最低的指定最低的IRQ010无操作无操作 R、SL、EOI三位组合为中断结束方式及循环方式三位组合为中断结束方式及循环方式 无操作无操作下一个读指令读取下一个读指令读取IRR下一个读指令读取下一个读指令读取ISR下一个读指令读中断状态(查询命令)下一个读指令读中断状态(查询命令)8259A在在IBM PC/XT机中的应用机中的应用 一片8259A基地址020H和021H ICW1:边沿触发,单片:边沿触发,单片8259,需要,需要
4、ICW4ICW2:IRQ0IRQ7对对应的中断类型码为应的中断类型码为08H0FH。ICW4:、缓冲方式、非自动结束。缓冲方式、非自动结束。;主程序;主程序 DATA SEGMENT ;数据段数据段BUF DB 100 DUP(?)DATA ENDSCODE SEGMENT ;代码段;代码段 ASSUME CS:CODE,DS:DATA START:MOV DX,DATA MOV DS,AX PUSH DS ;设置中断向量;设置中断向量 MOV AX,SEG INTPR MOV DS,AX MOV DX,OFFSET INTPR MOV AL,0AH MOV AH,25H INT 21H PO
5、P DSMOV DX,021H ;开放;开放IRQ中断中断 IN AL,DX AND AL,0FBHOUT DX,ALMOV SI,OFFSET BUF;设置地址指针;设置地址指针 MOV CX,100 ;计数器赋初值;计数器赋初值 STI ;开中断;开中断 LOP:HLT ;等待中断;等待中断 LOOP LOP ;CX-,等待下一次中断等待下一次中断 MOV DX,021H ;CX-,关闭关闭IRQ中断中断 IN AL,DX OR AL,04H OUT DX,AL MOV AH,4CH ;返回;返回 INT 21H;中断服务程序;中断服务程序 INTPR PROC NEAR MOV AL,S
6、I ;输出一个字符输出一个字符 MOV DX,27FH OUT DX,AL INC SI ;修改地址指针;修改地址指针 MOV AL,20H;发中断结束命令发中断结束命令 MOV DX,020H OUT DX,AL IRET;返回主程序返回主程序 INTPR ENDPCODE ENDS END START说明:说明:CPU执行到执行到HLT指令时,不断进行空操作,直到接指令时,不断进行空操作,直到接 到到INTR,才退出空操作,转到中断服务程序才退出空操作,转到中断服务程序*从片基地址从片基地址A0H和和A1H,中断码中断码70H 77H;*主片基地址主片基地址20H和和21H,中断码,中断码
7、08H0FH;主片主片IRQ2级联出级联出IRQ8 IRQ15;利用利用8259A对外部可屏蔽中断进行控制时应完成:对外部可屏蔽中断进行控制时应完成:1.分配合适的中断级分配合适的中断级 2.设计或选择中断请求信号产生逻辑设计或选择中断请求信号产生逻辑 3.设置中断向量表,开放中断设置中断向量表,开放中断按照任务的紧急程序安排中断优先级,越紧急,分配按照任务的紧急程序安排中断优先级,越紧急,分配优先级越高的优先级越高的IRQ端端 只能利用没有被系统已有设备占用的只能利用没有被系统已有设备占用的IRQ端端将中断服务程序的入口地址置入中断向量表将中断服务程序的入口地址置入中断向量表清除清除8259
8、A对相应对相应IRQ的屏蔽的屏蔽例:例:某某8088系统中系统中8259A单级使用,单级使用,端口地址端口地址80H和和81H:11001000需要需要ICW4单级,不需要单级,不需要ICW4边沿触发边沿触发00011000中断类型码高中断类型码高5位位100000008086/8088非非自动结束方式自动结束方式非非缓冲方式缓冲方式全嵌套方式全嵌套方式注意:寄存器注意:寄存器ICW1ICW4和和OCW1OCW3只占用两个只占用两个I/O端口地址(奇地址和偶地址),由引脚端口地址(奇地址和偶地址),由引脚A0的输入信号的输入信号来选择。来选择。P PRRIS功功 能能00X无操作无操作010下一个读指令读取下一个读指令读取IRR011下一个读指令读取下一个读指令读取ISR1XX下一个读指令读中断状态(查询命令)下一个读指令读中断状态(查询命令)P、PR、RIS三位组合方式三位组合方式
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。