目录
一、实验目的和要求
二、实验原理与背景
2-1、微处理器的中断类型
2-2、8259A内部结构
2-3、8259A读写控制逻辑
2-4、PC上可屏蔽中断
三、实验具体的内容
四、实验的代码说明
五、实验结果的分析
附录材料
一、 实验目的和要求
学会8259芯片和微机接口原理和方法。
掌握8259中断芯片的基本工作原理、工作方式和编程原理。
二、 实验原理与背景
2-1、微处理器的中断类型
图2.1 微处理器中断结构图
2-2、8259A内部结构
图2.2 8259A内部结构图
2-3、8259A读写控制逻辑
图2.3 8259A读写控制逻辑
2-4、PC上可屏蔽中断
PC机用户可使用的硬件中断只有可屏蔽中断,由8259中断控制器管理。中断控制器用于接收外部的中断请求信号,经过优先级判别等处理后向CPU发出可屏蔽中断请求。IBMPC、PC/XT机内有一片8259中断控制器对外可以提供8个中断源:
- 中断源 中断类型号 中断功能
- IRQ0 08H 时钟
- IRQ1 09H 键盘
- IRQ2 0AH 保留
- IRQ3 OBH 串行口2
- IRQ4 0CH 串行口1
- IRQ5 0DH 硬盘
- IRQ6 0EH 软盘
- IRQ7 0FH 并行打印机
8个中断源的中断请求信号线IRQ0~IRQ7在主机的62线ISA总线插座中可以引出,系统已设定中断请求信号为“边沿触发”,普通结束方式。对于PC/AT及286以上微机内又扩展了一片8259中断控制,IRQ2用于两片8259之间级联,对外可以提供16个中断源:
- 中断源 中断类型号 中断功能
- IRQ8 070H 实时时钟
- IRQ9 071H 用户中断
- IRQ10 072H 保留
- IRQ11 O73H 保留
- IRQ12 074H 保留
- IRQ13 075H 协处理器
- IRQ14 076H 硬盘
- IRQ15 077H 保留
TPC-USB实验板上,将中断源固定接到3号中断IRQ3上,即进行中断实验时,所用中断类型号为0BH。
三、实验具体的内容
直接用手动产生单脉冲作为中断请求信号。要求每按一次开关产生一次中断,在屏幕上显示一次“TPCA Interrupt!”,中断10次后程序退出。步骤如下:
① 连接实验电路如图3.1所示。
图3.1 TPC-USB平台中断实验连线图
② 根据流程图1.2,编程并运行,观察实验结果。
图3.2 TPC-USB平台中断实验流程图
四、实验的代码说明
1 data segment 2 mess db ‘tpca interrupt!‘,0dh,0ah,‘$‘ 3 data ends 4 code segment 5 assume cs:code,ds,data 6 start: 7 8 mov ax, cs 9 mov ds, ax 10 mov dx,offset int3 ;中断子程序入口偏移量 11 mov ax,250bh ;设置中断的中断矢量 12 int 21h 13 14 cli ;CPU清中断标志 15 in al,21h ;设置中断屏蔽OCW1 16 and al,0f7h ;开放IRQ3中断 17 out 21h,al 18 mov cx,10 ;循环10次的循环计数器 19 sti ;CPU开中断 20 ll: ;循环等待 21 jmp ll 22 ;------------------------------------------------- 23 int3: ;中断子程序 24 mov ax,data ;09中断显示字符 25 mov ds,ax 26 mov dx,offset mess 27 mov ah,09 28 int 21h 29 30 mov al,20h ;发出EOI结束中断 31 out 20h,al 32 33 loop next ;循环(CX为循环计数器) 34 35 in al,21h ;循环结束后关闭IRQ3中断 36 or al,08h 37 out 21h,al 38 39 sti ;开中断 40 mov ah,4ch ;结束程序 41 int 21h 42 43 next: 44 iret 45 code ends 46 end start
五、实验结果的分析
直接用手动产生单脉冲作为中断请求信号。要求每按一次开关产生一次中断,在屏幕上显示一次“TPCA Interrupt!”,中断10次后程序退出。
图5.1 实验DOS窗口截图
附录材料
本文链接: http://www.cnblogs.com/zjutlitao/p/4172171.html
更多精彩:http://www.cnblogs.com/zjutlitao/p/4125085.html
文档下载:http://pan.baidu.com/s/1i3469X7