8259中断控制
一. 实验目的
(1) 掌握8259中断控制器的工作原理;
(2) 掌握系统总线上PCI_INTR中断请求的应用编程方法。 二. 实验设备
PC机一台,TD-PITD实验装置一套。 三. 实验要求
利用系统总线上中断请求信号PCI_INTR设计一个单中断应用。使用单次脉冲模拟中断产生。编写中断处理程序,在显示器频幕上显示一个字符“9”。 四. 实验内容
1. 中断控制器简介
中断控制器8259A是专为控制优先级中断而设计的芯片。它将中断源优先级排队、辨别中断源以及提供中断矢量的电路集于一片中。因此无需附加任何电路,只需对8259A进行编程,就可以管理8级中断,并选择优先模式和中断请求方式。即中断结构可以由用户编程来设定。同时,在不需要增加其它电路的情况下,通过多片8259A的级联,能构成多达级的矢量中断系统。它的管理功能包括:(1)纪录各级中断源请求;(2)判断优先级,确定是否响应和响应哪一级中断;(3)响应中断时,向CPU传送中断类型号。 2. 8259的内部结构和引脚图
五. 实验步骤
实验参考程序:
实验方法:
(1) 按下图接线
(2) 运行Tdpit集成操作软件,根据实验要求编写程序并编译、链接。
(3) 使用运行程序命令运行行程序,重复按单次脉冲开关KK+,显示屏会显示字符
“9”,说明响应了中断。
六. 实验结论
1.当IR0连接的开关从断开到闭合时,有上升沿产生,则调用中断服务程序INT_0。
2.8086的中断系统是向量中断方式,内存中特定位置有一中断向量表,表内存有不同中断类型的中断向量,不同的中断向量对应不同的偏移地址;
3.中断类型由8359通过数据总线送给8086,8086乘4,而后赋给指令指针,从而转向中断向量表的相应单元取得中断入口地址,之后就进入中断服务程序;
4.中断类型的高5位由8359寄存器ICW2决定,低3位由中断源IRx的编码自动填充,IRO~IR7的编码分别是000,001,010,011,100,101,110,111。