8259 中的服务中寄存器
此外,一个 8 位寄存器对当前执行的中断请求进行跟踪记录。如果当前正在处理请求 IR6,则 ISR 的内容将为 01000000。如果在 IR6 的服务过程中,以任何方式请求 IR3 变得活跃,8259 将 ISR 的第 3 位设置为 1 并激活输出 INT。但是,ISR 的第 6 位始终保持为 1,因为 IR6 请求尚未完全得到处理。因此,ISR 的内容变为 01001000。以下所述的假设有助于实现这一点。
在 8259 以完全嵌套模式运行之前,无需优先级轮换,这样 IR3 的优先级高于 IR6。
处理器应在为 IR6 指定的例程中启用中断。
直到 IR3 请求尚未屏蔽。
图:8259 与 8085 处理器一起连接
广告