8259 中使用的寄存器
8259 是一种专门的 I/O 端口芯片。它从未用于 I/O 设备的接口,而仅用于控制微计算机中的中断。8259 仅包含 A0 作为唯一的地址输入引脚。因此,对于微处理器,8259 端口仅可能有两个地址。这两个端口可以分别称为低端口和高端口。
当 A0 = 0 时,处理器选择低端口。
当 A0 = 1 时,处理器选择高端口。
处理器向这些端口发出一些称为命令字的字,以便更好地配置 8259。有几个命令字,通常分为初始化命令字和操作命令字。8259 有四个初始化命令字,即 ICW1、ICW2、ICW3 和 ICW4,以及三个操作命令字,即 OCW1、OCW2 和 OCW3。处理器通过读取称为低端口和高端口的两个端口来读取 8259 的状态。此外,还有几个状态字需要进一步读取。
8259 始终使用许多 8 位寄存器(如下所示)来完成其工作过程。
中断请求寄存器、中断屏蔽寄存器和中断服务寄存器
- IRR 存储所有请求中断服务的各种中断级别。
- ISR 存储当前执行的中断级别。
- IMR 存储中断级别的屏蔽位。
处理器仅使用高端口和低端口写入和读取命令和状态字,或访问寄存器。命令字或状态字或寄存器的识别完全基于 A0 值。
图:8259 与 8085 处理器接口
广告