- 4
- 0
- 约9.82千字
- 约 55页
- 2018-03-01 发布于浙江
- 举报
[信息与通信]第七章 输入输出和中断
7.1 外设接口的一般结构 7. 1. 1 数据信息:是I/O设备和CPU真正要交换的信息 数字量:以二进制形式表示的数 模拟量:各种物理量 开关量:是一些状态量,用一位二进制数表示。如电机的运转与停止,开关的合与断 7. 1. 2 状态信息:表示外设当前所处的工作状态,如READY(准备好信号) 7. 1. 3 控制信息:由CPU发出,用于控制I/O接口工作方式以及外设的启动和停止等,如片选信号,读写信号。 7.2 CPU与外设交换数据的方式 特点:以CPU为中心,数据传送的控制来自CPU,通过预先编制好的输入或输出程序(传送指令和I/O指令)实现数据的传送 。 分类: 无条件传送 查询传送 中断传送。 中断响应条件:当前指令执行完,有中断请求,CPU允许中断 中断响应的过程: 1)发出中断响应信号。 2)同时自动关中断,即置中断允许触发器IF为“0”。 3)保存断点。 4)保护现场。 5)输入到中断服务 程序逻辑的入口地址 中断处理: 1)起始部分—保护现场 2)主体部分—中断服务 3)结尾部分—恢复现场 2、8259A的工作原理 (P210) 4)第一个负脉冲到达时(第一个中断响应周期),8259A做到: 使IRR的锁存功能失效。 使当前中断服务寄存器ISR中的相应位置1。 使IRR寄存器中的相应位清零。 5)第二个负脉冲到达时 (第二个中断响应周期), 8259A完成: 将中断类型寄存器中的内容ICW2,送到数据总线的D7~D0,CPU将此作为中断类型码。 第二个脉冲结束时,8259A会将第一个脉冲到来时设置的当前中断服务寄存器ISR的相应位清零。 7.5.4 8259A的工作方式 1 中断嵌套方式 a) 全嵌套方式:IR0优先级最高,IR7优先级最低。 b) 特殊全嵌套方式 2 中断优先级循环方式 自动循环方式:若干个中断源有相等的优先权 特殊循环方式:通过写OCW2来改变优先权 3 中断屏蔽 a) 普通屏蔽方式:用OCW1将IMR寄存器某位置1 b) 特殊屏蔽方式:用OCW3设置该方式(即D6D5=11)后,此时由OCW1写入“1”的位被屏蔽,为“0”的位不管优先权如何,可申请中断 4 程序查询方式:8259A在这种方式下,不向CPU发INT信号,或使IF=0禁止中断输入,而是CPU利用查询命令(OCW2中D2=1)获得当前请求服务的优先级。8259A将OCW2中D2=1后的下一个读命令看作中断响应信号,在ISR中置最高优先权的相应位,如图7-22中W0~W2即为中断请求的最高优先级中断源编码。 5 中断结束命令:当某个中断源的服务完成时,必须给8259A一个中断结束命令,使这个中断源在ISR相应位复位。8259A主要有自动中断结束方式(AEOI)、非自动中断结束方式(EOI)和特殊中断结束方式 6 读8259A的状态:8259A几个内部寄存器IRR、ISR、IMR的状态,可通过读命令可读入CPU供用户了解8259A工作情况 7.5.5 由多片8259A组成主从式中断系统 当一个系统中若中断源多于8个,则需采用多片8259A级连,组成主从式中断系统。见书图7-23 如何连接? 其中一片是主8259A,其三条级连线CAS0~CAS2做输出线,连至每个从片8259A 的CAS0~CAS2 ,每个从8259A的中断信号INT,连至主8259A的一个中断请求输入端。主8259A的INT线与CPU的中断请求输入端INTR相连。 7.5.6 8259A编程实例 8259A初始化要求 1 初始化 MOV AL,13H;写ICW1,单片,边沿触发,要ICW4 OUT 20H,AL MOV AL,08H;写ICW2,中断类型码为8(IR0) OUT 21H,AL MOV AL,0DH;写ICW4,全嵌套,缓冲工作,正常EOI OUT 21H,AL 7.5.3 8259A的编程 8259A的编程分两部分:初始化编程和工作方式编程 1. 8259A的初始化编程 8259A的初始化命令字共4个(ICW1~ICW4)。不是任何情况下都需要设置4个命令字,可根据8259A的使用情况来选取,它们设置过程如图7-13所示。 SNGL IC4 ADI LTIM 1 A5 A6 A7 1 = 需要ICW4 0 = 不需要ICW4 0 偶地址 A0 D7 D6 D5 D4 D3 D2 D1 D0 ICW1识 别 位 1 = 单片 0 = 级连 调用地址间隔 1 = 间隔为4 80X86中不用 0 = 间隔为8 1 = 电平触发 0 = 边沿触发 中断向量地址 的A7~A5 (只用于MCS-80/85
原创力文档

文档评论(0)