预览加载中,请您耐心等待几秒...
1/9
2/9
3/9
4/9
5/9
6/9
7/9
8/9
9/9

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

实验七中断特性及8259应用编程实验 一、实验目的 1.掌握8259中断控制的工作原理。 2.学习8259的应用编程方法。 3.掌握8259级联方式的使用方法。 二、实验设备 PC机一台,TD-PITE试验装置一套。 三、实验原理及内容 在Intel386EX芯片中集成有中断控制单元(ICU),该单元包含有两个级联中断控制器,一个为主控制器,一个为从控制器。该中断控制单元就功能而言与工业上标准的82C59A是一致的,操作方法也相同。从片的INT连接到主片的IR2信号上构成两片8259的级联。 在TD-PITE实验系统中,将主控制器的IR6、IR7以及从控制器的IR1开放出来供实验使用,主片8259的IR4供系统串口使用。8259的内部连接及外部管脚引出如图7-1所示。 图7-18259内部连续及外部管脚引出图 表7-1列出了中断控制单元的寄存器相关信息。 表7-1ICU寄存器列表 初始化命令字1寄存器(ICW1)说明见图7-2所示。 图7-2初始化命令字1寄存器 初始化命令字2寄存器(ICW2)说明见图7-3所示。 图7-3初始化命令字2寄存器 初始化命令字3寄存器(ICW3)说明,主片见图7-4,从片见图5。 初始化命令字4寄存器(ICW4)说明见图7-6。 图7-6初始化命令字4寄存器 操作命令字1寄存器(OCW1)说明见图7-7。 图7-7操作命令字1寄存器 操作命令字2寄存器(OCW2)说明如图7-8所示。 图7-8操作命令字2寄存器 操作命令字3寄存器(OCW3)说明如图7-9所示。 图7-9操作命令字3寄存器 查询状态字(POLL)说明如图7-10所示。 图7-10程序状态字寄存器 在对8259进行编程时,首先必须进行初始化。一般先使用CLI指令将所有的可屏蔽中断禁止,然后写入初始化命令字。8259有一个状态机控制对寄存器的访问,不正确的初始化顺序会造成异常初始化。在初始化主片8259时,写入初始化命令字的顺序是:ICW1、ICW2、ICW3、然后是ICW4,初始化从片8259的顺序与初始化主片8259的顺序是相同的。 系统启动时,主片8259已被初始化,且4号中断源(IR4)提供给与PC联机的串口通信使用,其它中断源被屏蔽。中断矢量地址与中断号之间的关系如下表所示: 1.8259单中断实验 实验接线图如图7-11所示,单次脉冲输出与主片8259的IR7相连,每按动一次单次脉冲,产生一次外部中断,在显示屏上输出一个字符“7”。 图7-118259单中断实验接线图 程序如下: SSTACK SEGMENTSTACK DW32DUP(?) SSTACK ENDS CODE SEGMENT ASSUMECS:CODE START: PUSHDS MOVAX,0000H MOVDS,AX MOVAX,OFFSETMIR7 ;取中断入口地址 MOVSI,003CH ;中断矢量地址 MOV[SI],AX ;填IRQ7的偏移矢量 MOVAX,CS ;段地址 MOVSI,003EH MOV[SI],AX ;填IRQ7的段地址矢量 CLI POPDS ;初始化主片8259 MOVAL,11H OUT20H,AL ;ICW1 MOVAL,08H OUT21H,AL ;ICW2 MOVAL,04H OUT21H,AL ;ICW3 MOVAL,01H OUT21H,AL ;ICW4 ;初始化从片8259 ;MOVAL,11H ;OUT0A0H,AL ;MOVAL,30H ;OUT0A1H,AL ;MOVAL,02H ;OUT0A1H,AL ;MOVAL,01H ;OUT0A1H,AL ;MOVAL,0FFH ;OUT0A1H,AL MOVAL,6FH ;OCW1 OUT21H,AL STI AA1: NOP JMPAA1 MIR7: STI CALLDELAY MOVAX,0137H INT10H ;显示字符7 MOVAX,0120H INT10H MOVAL,20H OUT20H,AL ;中断结束命令 IRET DELAY: PUSHCX MOVCX,0F00H AA0: PUSHAX POPAX LOOPAA0 POPCX RET CODE ENDS ENDSTART 实验步骤: (1)按图7-11连接实验线路; (2)编写实验程序,经编译、链接无误后装入系统; (3)运行程序,重复按单次脉冲开关KK1+,显示屏会显示字符“7