微机原理与接口技术实验指导书
图2-4 点阵LED显示流程图
图2-5 点阵LED显示实验连线图
2.3.5 实验原始记录
记录程序调试中遇到的主要问题和解决方法。
2.3.6 实验报告与总结
(1)讨论实验中如何控制点阵LED发光? (2)如何控制LED行列循环显示的时间间隔
21
微机原理与接口技术实验指导书
2.4 8259中断控制器应用实验
2.4.1 实验目的
(1) 了解8259的中断特性;学习中断控制器8259的工作原理和初始化方法。 (2) 掌握使用PC机内8259的编程方法;掌握修改中断向量的方法。
2.4.2 实验设备
PC微机一台、TD-PIT+ 实验系统一套。
2.4.3 实验内容
(1) 利用PC机给实验系统分配的中断线,设计一个单中断应用。使用单次脉冲模拟中断产生。编写中断处理程序,在显示器屏幕上显示一个字符。
(2) (选作)利用实验平台上8259控制器对扩展系统总线上的中断线INTR进行扩展。编写程序对8259控制器的IR0和IR1中断请求进行处理。
2.4.4 实验原理
中断控制器8259A是Intel公司专为控制优先级中断而设计开发的芯片。8259A的内部结构和引脚如图2-6所示。
8259A的编程就是根据应用需要将初始化命令字ICW1-ICW4和操作命令字OCW1- OCW3分别写入初始化命令寄存器组和操作命令寄存器组。ICW1-ICW4各命令字格式如图2-7所示,OCW1-OCW3各命令字格式如图2-8所示,其中OCW1用于设置中断屏蔽操作字,OCW2用于设置优先级循环方式和中断结束方式的操作命令字,OCW3用于设置和撤销特殊屏蔽方式、设置中断查询方式以及设置对8259内部寄存器的读出命令。
图2-6 8259内部结构和引脚图
22
微机原理与接口技术实验指导书
图2-7(a) ICW1格式
图2-7(b) ICW2格式
图2-7(c) ICW3格式
图2-7 (d)ICW4格式
图2-8 OCW命令字格式
23
微机原理与接口技术实验指导书
(1) 8259寄存器及命令的控制访问
在硬件系统中,8259仅占用两个外设接口地址,在片选有效的情况下,利用A0来寻址不同的寄存器和命令字。对寄存器和命令的访问控制如表2-1所示。
表2-1 8259寄存器及命令的访问控制
(2) PC微机系统中的8259
在80x86系列PC微机系统中,系统中包含了两片8259A中断控制器,经级连可以管理15级硬件中断,但其中部分中断号已经被系统硬件占用,具体使用情况如表2-2所示。两片8259A的端口地址为:主片8259使用020H和021H两个端口;从片使用0A0H和0A1H两个端口。系统初始化两片8259的中断请求信号均采用上升沿触发,采用全嵌套方式,优先级的排列次序为0级最高,依次为1级、8级~15级,然后是3级~7级。
在扩展系统总线上的INTR对应的就是PC机保留中断其中的一个。对INTR中断的初始化PC机已经完成,在使用时主要是将其中断屏蔽打开,修改中断向量。
表2-2 PC微机系统中的硬件中断 中断号 主8259A IRQ0 主8259A IRQ1 主8259A IRQ2 主8259A IRQ3 主8259A IRQ4 主8259A IRQ5 主8259A IRQ6 主8259A IRQ7 从8259A IRQ8 从8259A IRQ9 从8259A IRQ10 从8259A IRQ11 从8259A IRQ12 从8259A IRQ13 从8259A IRQ14 从8259A IRQ15 功能 日时钟/计数器0 键盘 接从片8259A 串行口2 串行口1 并行口2 软盘 并行口1 实时钟 保留 保留 保留 保留 协处理器中断 硬盘控制器 保留 中断向量号 08H 09H 0AH 0BH 0CH 0DH 0EH 0FH 70H 71H 72H 73H 74H 75H 76H 77H 中断向量地址 0020H~0023H 0024H~0027H 0028H~002BH 002CH~002FH 0030H~0033H 0034H~0037H 0038H~003BH 003CH~003FH 01C0H~01C3H 01C4H~01C7H 01C8H~01CBH 01CCH~01CFH 01D0H~01D3H 01D4H~01D7H 01D8H~01DBH 01DCH~01DFH 24
微机原理与接口技术实验指导书
2.4.5 实验说明及步骤
1)单中断应用实验
本实验要求使用总线上INTR中断请求线完成一次单中断应用实验。中断处理程序完成在屏幕上的显示字符“9”。实验前先运行CHECK程序,得到INTR所对应的中断号、相应的初始化命令字寄存器ICW及操作命令字寄存器OCW的地址、开屏蔽的命令字、中断矢量地址和PCI卡中断控制寄存器INTCSR的地址。得到这些信息后就可以开始设计实验了。参考程序流程如图2-9所示。
实验步骤如下。
(1) 确认从PC机引出的两根扁平电缆已经连接在实验平台上。 (2) 首先运行CHECK程序,查看INTR中断号及相关信息。 (3) 参考实验流程图编写程序,然后编译链接。 (4) 将单次脉冲单元的KK1+连接到系统总线上的INTR。 (5) 运行程序,按动KK1+按键,观察中断是否产生。
图2-9 8259中断应用实验(1)参考程序流程图
2) 扩展多中断源实验
利用实验平台上的8259控制器,可以对总线上的INTR进行扩展。将8259的
25