中断控制器8259可管理A问题

以下试题来自:
问答题简述中断控制器8259A的主要功能。 (1)管理8级优先级中断源,级联时最多可管理64级优先级中断源。
(2)对任一中断源可单独进行屏蔽。
(3)提供可编程的中断......
为您推荐的考试题库
你可能感兴趣的试题
1.问答题 分辨率是指ADC对输入电压微小变化响应能力的度量,它是数字输出的最低有效位(LSB)所对应的模拟输入电平值。2.问答题 数/模(D/A)转换就是将微型计算机处理后的数字量转换为模拟量形式的控制信号输出。3.问答题 模/数(A/D)转换就是把输入的模拟量转换为数字量,供微型计算机处理。4A.I/O端口的地址码较短B.需要专用的I/O指令C.I/O寻址方式丰富D.需要I/O读写信号实现I/O操作E.I/O端口的增加会影响内存储器的容量5A.起始位B.SYN字符C.数据位D.校验位E.停止位
热门相关试卷
最新相关试卷8259A可编程中断控制器实验 2.1
实验目的 1、掌握8259A可编程中断控制器的工作原理、编程方法以及如何通过8259A实现对外部可屏蔽硬件中断的管理;熟悉实验中涉及到的中断屏蔽寄存器IMR和中断服务寄存器ISR等的使用方法。 2、进一步掌握中断服务程序的设计方法。 2.2
实验预习要求 1、 复习教材中有关中断的内容,了解微型计算机中外部可屏蔽硬件中断的处理过程。 2、 复习8259A的工作原理以及如何通过8259A实现对外部可屏蔽硬件中断源的管理。 3、 复习中断服务程序的编写方法。 4、 预先编写好实验程序。 2.3 实验原理 微型计算机中用户可使用的外部硬件中断只有可屏蔽中断,由8259A可编程中断控制器管理。中断控制器用于接收外部的中断请求信号,可实现中断优先级判定、提供中断类型号、屏蔽中断输入等功能。 在IBM PC/XT机中,仅使用了1片8259A芯片,能实现对外部8个硬件可屏蔽中断源的中断管理(其中IRQ2系统保留),有关8259A在IBM PC/XT机中的使用情况见教材“7.5 可编程中断控制器Intel 8259A”一节。IBM PC/AT(80286CPU)及其以后机型使用2片8259A组成级联方式,扩展的8259A与主8259A通过IRQ2进行级联,两个8259A中断控制器最多可对外部15个中断源进行管理。 实验台上的中断请求信号通过扁平电缆连接到微机主板上的ISA总线扩展插槽的IRQ2、IRQ3、IRQ4和IRQ7中的某一个上,然后送往主板上主8259A可编程中断控制器的对应中断请求输入端。具体选用IRQ2、IRQ3、IRQ4和IRQ7中的哪一个,由本实验台接口卡上的跳线开关(JK)设置,可以选择将IRQ2、IRQ3、IRQ4和IRQ7中的某一个引到实验台上的IRQ插座上,跳线方法详见第3章,实验台接口卡出厂设置为IRQ7。 系统启动时,8259A中断类型号的高5位已被初始化为00001,故IRQ0?IRQ7的中断类型号为08H?0FH;8259A的中断结束方式初始化为非自动结束方式,即要在中断服务程序中发EOI命令;中断请求信号设置为“边沿触发”方式;8259A的端口地址为20H和21H。 2.4
实验内容 按图4.2-1连接线路(只需连接一根线),按动单脉冲发生器的微动开关产生一个正脉冲作为中断请求信号。要求设置初始n,当按下n/2次按键时,屏幕上显示出初值n; IRQ 2.5 实验提示 设实验台接口卡上的跳线开关(JK)设置为通过ISA总线中的IRQ7(接口卡出厂设置)将实验台上的中断请求信号引入微机主板上的主8259A中断控制器。由于系统中使用IRQ7作为并行打印机的中断请求信号输入,其中断类型号为0FH,其对应的中断服务程序入口地址存放在内存(中断向量表)0FH?4?0FH?4+3四个存储单元中,因此,程序应首先将系统设置的IRQ7对应的中断服务程序的入口地址保存起来,然后再将实验台上的外部可屏蔽硬件中断对应的服务程序的入口地址写入中断向量表中的这四个单元中,在程序返回前恢复原有内容。下面分别给出以上有关操作的编程提示。 1、原中断向量的保存与新中断向量的写入
& & 图4.2-1
DW ? IPBAK
DW ? MKBAK
ASSUME CS:CODE,DS:DATA START
MOV AX,DATA
AL,21H保留8259初始屏蔽字的状态
AND AL,B ;打开键盘屏蔽
MOV AX,0修改键盘中断的中断矢量
MOV DI,24HIRQ1,09H,24H=09H*4
MOV AX,ES:[DI]
MOV IPBAK,AX写入IP
MOV AX,OFFSET MYINT
MOV AX,ES:[DI]写入CS
MOV CSBAK,AX
MOV AX,SEG MYINT
DX,DX清计数器 A1:
CMP DX,20计数到指定数否
A2到,结束程序运行
JMP A1否则继续等待键盘中断 A2:
PUSH DX保存计数值
MOV AX,0恢复系统中断矢量
MOV DI,24HIRQ1,09H
MOV AX,IPBAK
MOV AX,CSBAK
AL,MKBAK ;恢复系统8259屏蔽字
POP DX显示计数值
CALL SHWORD
MOV AX,4C00H
ENDP MYINT
PROC FAR字定义键盘中断处理程序
DX计数加一
AL,60H读入扫描码(用户可对此键值进行处理)
AL,61H读入控制字节
61H,AL复位键盘
AL,61H中断结束命令送中断控制器
OUT 20H,AL
IRET中断返回 MYINT
SHWORD PROC NEAR
SHWORD ENDP SHOW PROC NEAR
AND AL,0F0H取高4位
CMP AL,0AH是否是A以上的数
ADD AL,07H
C2: ADD AL,30H
MOV DL,AL显示字符
MOV AH,02H
AND AL,0FH
CMP AL,0AH
AL,07H C3: ADD AL,30H
MOV AH,02H
RET SHOW ENDP
;显示字符 取原IRQ7的中断向量,并存 KEEP_CS和KEEP_IP中 设置新的IRQ7中断服务 程序的中断向量 读取保存IMR,将IMR中与 IRQ7对应位清零 开始 显示相应的中断提示信息 设置中断次数(CX)=10 N 恢复IMR和IRQ7原中断向量 返回主程序 图4.2-3
中断服务程序流程图 图4.2-2
主程序流程图
START 实验结果;
说明:本实验设置初值为20H,当按下键盘16次时,即产生了32次中断,频幕显示0020 ? 开始 (CX)=0 ? Y 发中断结束命令 (CX)-1送CX 结束 2.6
实验结果 1、根据流程图编写实验程序,并说明在实验过程中遇到了哪些问题,是如何处理的。 实验时,应该清楚程序输出是十六进制,当按键盘16次时,产生32此中端,及十六进制0020H 2、写出实验小结,内容包括实验心得(收获)、不足之处或今后应注意的问题等。
这次实验让我了解了8259A可编程中断控制器的工作原理、编程方法以及如何通过8259A实现对外部可屏蔽硬件中断的管理。并且使我简单的会使用中断屏蔽寄存器IMR和中断服务寄存器ISR等> 问题详情
当中断控制器8259A的A0接向地址总线A1时,若其中一个口地址为62H,问另一个口地址为多少?若某外设的中断类型
悬赏:0&答案豆
提问人:匿名网友
发布时间:
当中断控制器8259A的A0接向地址总线A1时,若其中一个口地址为62H,问另一个口地址为多少?若某外设的中断类型码是56H,则该中断源应加到8259A中的中断请求寄存器IRR的哪个输入端?
为您推荐的考试题库
您可能感兴趣的试题
1在LC正弦波振荡电路中,不用通用型集成运算放大器作放大电路的原因是其上限截止频率太低,难以产生高频振荡信号。
)2当集成运放工作在非线性区时,输出电压不是高电平,就是低电平。
)3一般情况下,电压比较器的集成运算放大器工作在开环状态,或者引入了正反馈。
我有更好的答案
请先输入下方的验证码查看最佳答案
图形验证:
验证码提交中……
每天只需0.4元
选择支付方式
支付宝付款
郑重提醒:支付后,系统自动为您完成注册
请使用微信扫码支付(元)
支付后,系统自动为您完成注册
遇到问题请联系在线客服QQ:
恭喜你被选中为
扫一扫-免费查看答案!
请您不要关闭此页面,支付完成后点击支付完成按钮
遇到问题请联系在线客服QQ:
恭喜您!升级VIP会员成功
提示:请截图保存您的账号信息,以方便日后登录使用。
常用邮箱:
用于找回密码
确认密码:简述中断控制器lntel8259a的主要功能_百度知道
简述中断控制器lntel8259a的主要功能
我有更好的答案
 8259A芯片是一个中断管理芯片,中断的来源除了来自于硬件自身的NMI中断和来自于软件的INT n指令造成的软件中断之外,通过9片8259A级联可扩展至64级可屏蔽中断优先级控制;  2 对每一级中断都可以通过程序来屏蔽或允许  3 在中断响应周期,并传递给CPU。  8259A的主要功能:  1 一片8259A可以接受8级可屏蔽中断请求,8259A可为CPU提供响应的中断类型吗;  4 具有多种工作方式,还有来自于外部硬件设备的中断,这些中断是可屏蔽的。这些中断也都通过PIC(Programmable Interrupt Controller)进行控制
餐饮从业员
为您推荐:
其他类似问题
控制器的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。当前位置: >
> 第5章 输入输出技术
第4节 中断控制器8259
5.2.3 中断控制器8259
&弄清芯片外部引线以便将它们连接到系统中;
&了解它们的工作方式和工作特点,以便有选择地应用它们的某些工作方式;
&理解芯片内部的控制字、命令字,以便对它们进行编程;
&了解每块芯片所占的地址,以便具体进行连接;
&在上述基础上实现对芯片的初始化及具体应用。
下面我们就开始具体介绍可编程中断控制器8259。
1. 8259的外部引线
可编程中断控制器8259外部引线图如图5.15所示。
D0-D7为双向数据线,与系统总线的数据线相连接。
WR、RD 为写和读控制信号,与系统总线的读写信号相连接。
CS为片选信号,只有CS 为低电平时,才能实现CPU对8259的写或读操作。
A0是8259内部寄存器的选择信号。
INT为8259的中断请求输出信号,可直接接到CPU的INTR输入端。
INIT为中断响应输入信号。
CAS0~CAS2为级联控制线。
SP/EN 为双功能引线。
IR0~IR7中断请求输入端。
8259的内部有多个寄存器,其中包括:
中断请求寄存器(IRR),其内部保存着所有外部中断源IR0~IR7的中断请求状态。
中断服务寄存器(ISR),用来保存所有正在服务的中断源。当8259收到中断结束命令时,其寄存的状态进行调整。
中断屏蔽寄存器(IMR),保存着被屏蔽的所有中断源。其屏蔽功能可用命令修改。
2. 8259的工作方式
通过编程,可以设置8259的不同工作方式,以便适应不同环境的需要。这也说明8259工作的灵活性和适应性。
(1) 86/88工作模式
(2) 特殊屏蔽方式
在正常情况下,当一个中断请求被响应时,8259将禁止所有同级及更低优先级中断请求,这就称为一般屏蔽方式。
但是,在一特殊情况下,希望也允许较低优先级的中断请求产生中断。这时,可用特殊屏蔽方式。要做到这一点,需要利用后面将要提到的8259初始化命令字。
一个特殊屏蔽方式的示意图如图5.19所示,其中SMM等需要参看后面的命令字的定义。
(3) 中断结束
8259中,中断结束是利用复位ISR中的相应位来实现的。
具体有两种方法:
① 自动结束。
② 利用命令结束。
(a)一般中断结束命令(EOI)。
(b)特殊中断结束命令(SEOI)。
(4)优先级循环
根据8259命令字的规定,它有两种优先级规定:循环优先级和固定优先级。
循环优先级有3个结构:自动优先级循环用于中断源具有相等优先级的情况。
(5)查询状态
通过将操作命令字OCW3中的P位置1(后面要提到),可以查询8259的状态。
3. 8259的内部控制字
(1)初始化命令字
①初始化命令字ICW1。在A0=0,D4=1时为写入,各位的功能见图5.21。
②初始化命令字ICW2。
③初始化命令字ICW3。
④初始化命令字ICW4。
(2) 操作命令字OCW
①操作命令字OCW1。
②操作命令字OCW2。
R为优先级循环控制位,R=1为循环优先级;R=0为固定优先级。 L2、L1、L0为系统最低优先级编码,用它们来指定哪个IR优先级最低。
EOI是中断结束命令。该位为1时,将复位现行中断的中断服务寄存器中的相应位。在非自动EOI的情况下,需要用OCW2来复位当前最高优先级所对应的位。
SL用于选择L2、L1、L0编码。当SL=1时,L2~L0编码有效。SL=0时,L2~L0编码无效。除上述所说的外,R,SL,EOI编码功能见图5.26和表5.1。
③操作命令字OCW3。OCW3可用以设置查询方式、特殊屏蔽方式以及读8259的中断请求寄存器IRR、
中断服务寄存器ISR、中断屏蔽寄存器IMR的当前状态。OCW3各位功能如图5.27所示。
4. 8259的寻址与连接
为了使8259按照设计者的要求工作,就需要利用软件将初始化命令及操作命令字写入8259;
另一方面为了知道8259的工作状态,又必须将其内部的一些寄存器的内容读出来。对寄存器和命令的访问控制如表5.2所示。
5. 8259的初始化使用
下面是8259的初始化程序:
SET59A:MOV DX,0FF00H ;8259A的地址,A0=0
MOVAL,13H; ICW1,LT1M=0,单片,需要ICW4
OUT DX,AL
MOV DX,0FF02H;8259地址,此时A0=1
MOV AL,48H;ICW2,中断向量码
OUT DX,AL
MOV AL,03H ;ICW4,8086/88模式,自动EOI,非缓冲
OUT DX,AL;方式,一般全嵌套
MOV AL,0E0H; OCW1,屏蔽IR5,IR6,IR7
因为未用到这3个中断输入
OUT DX,AL
MOV DX,0FF02H
MOV AL,0;取OCW1为00H
OUT DX,AL;取00H写入IMR
IN AL,DX;读IMR
OR AL,AL;判断其内容为00H否
MOV AL,0FFH
OUT DX,AL
在读IMR时,可直接在对应A0=1的地址上读出;但要读IRR或ISR时,则必须先向8259写入一个命令字OCW3。以下是读出ISR内容的一段程序:
MOV DX,0FF00H ;对应A0=0
MOV AL,0BH ;0BH为OCW3
OUT DX,AL ;OCW3写入8259
IN AL,DX ;读出ISR的内容,放在AL中
具体做法如下:
(1) 编写20ms中断服务程序
CLOCK PROC FAR
MOV AX,SEGTIMER
MOV DS,AX
MOV SI,OFFSETTIMER
MOV AL,[SI] ;取50次计数
MOV[SI],AL
CMP AL,50 ;判1s到否?
MOV [SI],AL
MOV AL,[SI+1] ;取60s计数
MOV [SI+1],AL
CMP AL,60H ;判1min到否?
MOV [SI+1],AL
MOVAL, [SI+2] ;取60min计数
MOV [SI+2],AL
CMP AL,60H ;判1h到否?
MOV [SI+2],AL
MOV AL,[SI+3];取小时计数
MOV [SI+3],AL
CMP AL,24H
MOV [SI+3],AL
TRNED:POP SI
(2)确定中断向量,初始化8259
(3)初始化中断向量表
(a)直接编程初始化中断向量表
INTITB:MOV AX,0000H
MOV DS,AX
MOV SI,0120H
MOV DX,OFFSETCLOCK
MOV [SI],DX
MOV DX,SEGCLOCK
MOV [SI+2],DX
(b) DOS系统调用
若在DOS下工作,则可采用DOS系统调用:
INT 21H的功能25H
中断向量码&AL
中断服务程序段:偏移量&DS:DX
程序如下:
MOV AH,25H ;功能号
MOV AL,48H ;中断向量码
MOV DX,SEGCLOCK
MOV DS,DX
MOV DX,OFFSETCLOCK
6. 8259的级联
当微型机系统中的中断源较多,一片8259不能解决问题时,可以采用级联工作方式。这时指定一片8259为主控芯片,它的INT接到CPU上而其余的8259芯片均作为
从属芯片,其INT输出接到主控芯片的IR输入端。由于主控8259有8个IR输入端,故一个主控8259可以连接8片从属8259,最多允许有64个IR输入。
Copyright &
elecfans.com.All Rights Reserved

我要回帖

更多关于 8259中断实验 的文章

 

随机推荐