实验六 8 2 5 9 中断控制器实验 6 .1 实验目的 (1) 学习中断控制器8259 的工作原理。 (2) 掌握可编程控制器8259 的应用编程方法。 6 .2 实验设备 PC 微机一台、TD-PIT+实验系统一套。 6 .3 实验内容 1. 单中断应用实验 (1) 编写中断处理程序,利用PC 机给实验系统分配的中断线,使用单次脉冲单元的KK1+按键模拟中断源,每次PC 机响应中断请求,在显示器上显示一个字符。 (2) 编写中断处理程序,利用PC 机给实验系统分配的中断线,使用单次脉冲单元的KK1+按键模拟中断源,每次PC 机响应中断请求,在显示器上显示“Hello”,中断5 次后退出。 2.扩展多中断源实验 利用实验平台上8259 控制器对扩展系统总线上的中断线INTR 进行扩展。编写程序对8259 控制器的IR0 和 IR1 中断请求进行处理。 6 .4 实验原理 1. 8 2 5 9 控制器的介绍 中断控制器8259A 是 Intel 公司专为控制优先级中断而设计开发的芯片。它将中断源优先级排队、辨别中断源以及提供中断矢量的电路集于一片中,因此无需附加任何电路,只需对 8259A 进行编程,就可以管理8 级中断,并选择优先模式和中断请求方式,即中断结构可以由用户编程来设定。同时,在不需增加其他电路的情况下,通过多片 8259A 的级连,能构成多达64 级的矢量中断系统。它的管理功能包括:1)记录各 级中断源请求,2)判 别优先级,确 定是否 响应和响应哪 一级中断,3)响应中断时,向 CPU 传 送 中断类 型 号 。8259A 的内部 结构和引 脚 如 图 6-1 所 示。 8259A 的命 令 共 有 7 个,一类 是初 始 化 命 令 字,另 一类 是操 作命 令 。8259A 的编程就是根 据 应用需要 将初 始 化 命 令 字ICW1-ICW4 和操 作命 令 字OCW1-OCW3 分别写入 初 始 化命 令 寄 存 器组 和操 作命 令 寄 存 器组 。ICW1-ICW4 各 命 令 字格 式如 图6-2 所 示,OCW1-OCW3 各 命 令 字格 式如 图 6-3 所 示,其中OCW1 用于设置 中断屏 蔽 操 作字,OCW2用于设置 优先级循 环 方式和中断结束 方式的操 作命 令 字,OCW3 用于设置 和撤 销 特 殊 屏 蔽方式、设置中断查询方式以及设置对 8 2 5 9 内部寄存器的读出命令。 图 6-1 8259 内部结构和引脚图 图 6-2(a) ICW1 格式 图 6-2(b) ICW2 格式 图 6-2(c) ICW3 格式 图 6-2(d) ICW4...