《微机原理与接口技术》 实验指导书 石河子大学信息科学与技术学院 自动控制教研室
1 《微机原理与接口技术》 实验指导书 石河子大学信息科学与技术学院 自动控制教研室
实验一系统认识 实验目的:掌握TDN8651教学实验系统的基本操作 二、实验设备:TDN86/51教学实验系统一台。 三、实验内容及步骤: 1.熟悉系统: 操作步骤: ①用串行通信电缆将实验系统与微机相连 (②)将位于实验系统中线路板右下角的系统状态选择开关拨到86档,开启实验系统: (3)在C:8651DOS文件夹下双击MD86图标,选择对应的串口号,进入集成系统软件环 境,屏幕上出现提示符“)”(8086 Debug界面): ()在此界面下,屏暮上端为菜单栏,可通过各功能韩选择使用综辑、汇编、调试、示 波器等功能:屏幕中部为调试窗口(Debug)和寄存器、标志位显示窗口:屏幕下 方为信息栏 显示当前信息 2.实验内容一:从3500州内存单元开始建立0一15共16个数据。 程序如下:(A1-1.ASM) STACK SEGMENT STACK DW 64 DUP(?) :定义堆栈段 STACK ENDS CODE SEGMENT :定义代码段 ASSUME CS:CODE START:MOV DL,3500H ;设数据区首址 MOV CX.0010H :字节数送CX MOV AX.0000H SAHF AI:MOV [DI].AL ;写入一字节 INC DI ;修改地址指针 INCAX 修改数据 DAA 十讲制调 LOOP A 未填完转移 A2:JMPA2 CODE ENDS END START 操作步骤: )压F1健,进入全屏幕编辑操作 打开A-1.ASM文件,阅读、检查程序: 压ALT+X返回集成软件环境 (②)压F2健,对源程序进行汇编: 在信息栏输入待汇编的文件名:A1/ 系统自动完成汇编并生成OB文件和M文件 注意按屏幕提示信息操作。 (③)压F3键,对汇编生成的目标文件进行连接: 在信息栏输入待连接的文件名:A1/ 系统自动连接并生成相应的可执行文件A1.EXE
2 实验一 系统认识 一、实验目的:掌握 TDN86/51 教学实验系统的基本操作。 二、实验设备:TDN86/51 教学实验系统一台。 三、实验内容及步骤: 1. 熟悉系统: 操作步骤: ⑴ 用串行通信电缆将实验系统与微机相连; ⑵ 将位于实验系统中线路板右下角的系统状态选择开关拨到 86 档,开启实验系统; ⑶ 在 C:\8651DOS 文件夹下双击 MD86 图标,选择对应的串口号,进入集成系统软件环 境,屏幕上出现提示符“〉”(8086 Debug 界面); ⑷ 在此界面下,屏幕上端为菜单栏,可通过各功能健选择使用编辑、汇编、调试、示 波器等功能;屏幕中部为调试窗口(Debug)和寄存器、标志位显示窗口;屏幕下 方为信息栏,显示当前信息。 2. 实验内容一:从 3500H 内存单元开始建立 0—15 共 16 个数据。 程序如下:(A1-1.ASM) STACK SEGMENT STACK DW 64 DUP(?) ;定义堆栈段 STACK ENDS CODE SEGMENT ;定义代码段 ASSUME CS:CODE START: MOV DI, 3500H ;设数据区首址 MOV CX, 0010H ;字节数送 CX MOV AX, 0000H SAHF A1: MOV [DI], AL ;写入一字节 INC DI ;修改地址指针 INC AX ;修改数据 DAA ;十进制调整 LOOP A1 ;未填完转移 A2: JMP A2 CODE ENDS END START 操作步骤: ⑴ 压 F1 健,进入全屏幕编辑操作: 打开 A1-1.ASM 文件,阅读、检查程序; 压 ALT+X 返回集成软件环境。 ⑵ 压 F2 键,对源程序进行汇编: 在信息栏输入待汇编的文件名:A1↙ 系统自动完成汇编并生成 OBJ 文件和 M 文件。 注意按屏幕提示信息操作。 ⑶ 压 F3 键,对汇编生成的目标文件进行连接: 在信息栏输入待连接的文件名:A1↙ 系统自动连接并生成相应的可执行文件 A1.EXE
注意屏幕显示的连接信息。 (④)压F5键,装入程序: 在信息栏输入文件名:A1EXE/ 填入程序段地 止(CS):0000 填入偏移量地址(IP):2000 屏落是示:L0AD0K! (5)键入U0000:2000/讲行反汇编,拾杏程序是否正确装入 (⑥)运行程 提示符下键入:G=0000:2000 压CTRL+C返回监控状态。 (7)显示内存单元内容:键入D0000:3500/,可以查看3500-350刚单元中的内容是否 为0一15共16个数。 思考:如果装入的数是10,11,12 程序应作何修改 3.实验内容二:将内存3500H单元开始的16个数据传递到3600H单元开始的数据区中。 程序如下:(A2-1.ASM) STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE START:MOV SI,3500H :建立源地址指针 MOV DL 3600H :建立目标地址指针 MOV CX,0008H :字节数送入CX A1:MOV AX,[SI 取源数据 字送A MOV [DI].AX :将源数据送目标地址单元中 INCSI :修正指针 INC SI INC DI INCDI DEC CX :判断是否传送完 inzal A2:JMPA2 CODE ENDS END START 提示:调入源程序、汇编、连接、装入过程同实验内容一,源程序名为A1-2.ASM 键入:E3500/,在3500-3510单元中分别送入16个数据。 健入:D3500/,检查装入的数据是否正确。 犍入:G=0000:2000/,运行程序,压CTLC返回监控状态 键入:D3600/,检查传递结果
3 注意屏幕显示的连接信息。 ⑷ 压 F5 键,装入程序: 在信息栏输入文件名:A1.EXE ↙ 填入程序段地址(CS):0000↙ 填入偏移量地址(IP):2000↙ 屏幕显示:LOAD OK! ⑸ 键入 U0000:2000↙ 进行反汇编,检查程序是否正确装入。 ⑹ 运行程序: 在“>”提示符下键入:G=0000:2000↙ 压 CTRL+C 返回监控状态。 ⑺ 显示内存单元内容:键入 D0000:3500↙,可以查看 3500-350FH 单元中的内容是否 为 0~15 共 16 个数。 思考:如果装入的数是 10,11,12,.,程序应作何修改? 3. 实验内容二:将内存 3500H 单元开始的 16 个数据传递到 3600H 单元开始的数据区中。 程序如下:(A2-1.ASM) STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE START: MOV SI, 3500H ;建立源地址指针 MOV DI, 3600H ;建立目标地址指针 MOV CX, 0008H ;字节数送入 CX A1: MOV AX, [SI] ;取源数据一字送 AX MOV [DI], AX ;将源数据送目标地址单元中 INC SI ;修正指针 INC SI INC DI INC DI DEC CX ;判断是否传送完 JNZ A1 A2: JMP A2 CODE ENDS END START 提示:调入源程序、汇编、连接、装入过程同实验内容一,源程序名为 A1-2.ASM。 键入:E3500↙,在 3500~3510 单元中分别送入 16 个数据。 键入:D3500↙,检查装入的数据是否正确。 键入:G=0000:2000↙,运行程序,压 CTRL+C 返回监控状态。 键入:D3600↙,检查传递结果
实验二 显示程序实验 一、实验目的:了解TDN86/51系统中NT10H各功能块的作用及用法: 掌握字符方式下PC机显示器显示控制。 二、实验设备:TDN86/51教学实验系统一台。 三、实验内容及步骤: 1,显示器0功能调用使用说明如下: INT1OH使用说明 )入口:AH=00H,AL-01H 功能:清屏 (②)入口:AH=01H,AL=数据 功能:写AL中的数据到屏幕上 AH-06H,DS: BX=字串首址,且字符串尾用0OH填充。 功能:显示一字串,直到遇到0OH为止 2.在显示器上显示26个英文字母: 程序如下:(A8-1.ASM) STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE START:MOV CX,001AH :显示字符数送CX :显示字符“A” ;显万 字然 Al:MOV AL,BL INT IOH INC BL :显示下一个字符 PUSH CX MOV CX.OFFFFH A2:LOOPA2 POP CX DEC CX nzAl INT 03H CODE ENDS END START ▲调入源程序并检查无误后,经汇编、连接后装入系统。 ▲键入G=0000:2000/,运行程序,并观察程序运行结果 3.思考题: 修改程序,在显示器上显示“GOOD AFTERNOON.”。 要求:分别用AH=01(写AL中的字符到屏幕)功能块和A=O6(显示一字串 功能块米完成。(A8-2.ASM和A8-3.ASM
4 实验二 显示程序实验 一、实验目的:了解 TDN86/51 系统中 INT 10H 各功能块的作用及用法; 掌握字符方式下 PC 机显示器显示控制。 二、实验设备:TDN86/51 教学实验系统一台。 三、实验内容及步骤: 1. 显示器 I/O 功能调用使用说明如下: INT 10H 使用说明 ⑴入口:AH=00H,AL=01H 功能:清屏 ⑵入口:AH=01H,AL=数据 功能:写 AL 中的数据到屏幕上 ⑶入口:AH=06H,DS:BX=字串首址,且字符串尾用 00H 填充。 功能:显示一字串,直到遇到 00H 为止。 2. 在显示器上显示 26 个英文字母: 程序如下:(A8-1.ASM) STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE START: MOV CX, 001AH ;显示字符数送 CX MOV BL, 41H ;显示字符“A” MOV AH, 01H ;显示一个字符 A1: MOV AL, BL INT 10H INC BL ;显示下一个字符 PUSH CX MOV CX, 0FFFFH A2: LOOP A2 POP CX DEC CX JNZ A1 INT 03H CODE ENDS END START ▲调入源程序并检查无误后,经汇编、连接后装入系统。 ▲键入 G=0000:2000↙,运行程序,并观察程序运行结果。 3. 思考题: 修改程序,在显示器上显示“GOOD AFTERNOON.”。 要求:分别用 AH=01(写 AL 中的字符到屏幕)功能块和 AH=06(显示一字串) 功能块来完成。 (A8-2.ASM 和 A8-3.ASM)
实验三 中断特性及8259应用编程实验 一、 2.掌握8259中断控制器的工作原理 3.掌握8259可编程中断控制器的应用编程: 4.学习掌握8259级连方式的使用方法: 5。学习在接口实验单元上构造连接实验电路的方法 二、 实验设备 1.TDN86/51教学实验系统一台。 2.排线、导线若干。 三、实验内容及步骤: (1)系统中的8259芯片简介 系统中的8259芯片 系统中有2块8259芯片, 片为主片,另一片为从片。系统中的8259芯片工作于 单片方式,也可以由用户扩展连接成级连方式。(在实验箱的左侧) 系统启动时,8259被初始化,其初始化是通过系统中的初始化程序设置初始化命令 字ICW实现的。系统初始化时,趣定O#和4#中新源分别提供给实时钟和与PC微机联 机的串口通信,用户可使用其金的中衡题。在讲入监控后 只右4中断顺外开启 态,其他中断源都被屏蔽了。中断矢量地址与中断号之间的关系如下表: 中断序号‖ 0 1 2 345 67 功能调用08H09H0AH OBH OCH ODH 矢量地址 20H 24H 28H 2CH- 30H 34H 38 3CH 23H 27H 2BH 2FH 33H 37H 3BH 3FH 说明可用可用可用串口2串口1可用可用可用 2. 接口实验单元中的级连实验用8259芯片:除系统中的829芯片外,在接口实验单 元中专门提供有一片8259芯片作为从片,以便能够进行级连。(在实验箱的中部) 3.接口实验单元中还有2个R-S触发器,电路如下图: K (2)实验内容 1.8259应用实验(1) 实验线路:
5 实验三 中断特性及 8259 应用编程实验 一、实验目的: 1. 认识 TDN86/51 系统的中断特性; 2. 掌握 8259 中断控制器的工作原理; 3. 掌握 8259 可编程中断控制器的应用编程; 4. 学习掌握 8259 级连方式的使用方法; 5. 学习在接口实验单元上构造连接实验电路的方法。 二、实验设备: 1. TDN86/51 教学实验系统一台。 2. 排线、导线若干。 三、实验内容及步骤: (1)系统中的 8259 芯片简介 1. 系统中的 8259 芯片 系统中有 2 块 8259 芯片,一片为主片,另一片为从片。系统中的 8259 芯片工作于 单片方式,也可以由用户扩展连接成级连方式。(在实验箱的左侧) 系统启动时,8259 被初始化,其初始化是通过系统中的初始化程序设置初始化命令 字 ICW 实现的。系统初始化时,规定 0#和 4#中断源分别提供给实时钟和与 PC 微机联 机的串口通信,用户可使用其余的中断源。在进入监控后,只有 4#中断源处于开启状 态,其他中断源都被屏蔽了。中断矢量地址与中断号之间的关系如下表: 中断序号 0 1 2 3 4 5 6 7 功能调用 08H 09H 0AH 0BH 0CH 0DH 0EH 0FH 矢量地址 20H ~ 23H 24H ~ 27H 28H ~ 2BH 2CH~ 2FH 30H ~ 33H 34H ~ 37H 38H ~ 3BH 3CH ~ 3FH 说 明 可用 可用 可用 串口 2 串口 1 可用 可用 可用 2. 接口实验单元中的级连实验用 8259 芯片:除系统中的 8259 芯片外,在接口实验单 元中专门提供有一片 8259 芯片作为从片,以便能够进行级连。(在实验箱的中部) 3. 接口实验单元中还有 2 个 R-S 触发器,电路如下图: SS (2)实验内容 1. 8259 应用实验(1) 实验线路: S KK1+ KK1 +5V KK1- R
KK2 KK1- IRQ7 8259 实验内容:程序执行时,每次响应外部中断RQ7时(按KK2微动开关),显示屏 上会显示字符“7”。中断10次后(按下10次),系统处于停机状态。 程序如下:(A9-1.ASMD STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS CODE SEGMENT :保存数据段 MOV AX,0000H MOV DS,AX :数据段清0 MOV AX.OFFSET IRO7 :取中断程序入口地址(相对地址) ADD AX 2000H 加转载时P=2000H地址(绝对地h址 MOV SL.003CH 填8259中断7的中断矢量 MOV [SI].AX 填偏移量矢量 MOVAX.0000H :段地址CS=0000日 MOV SI,003EH MOV [SI].AX :填段地址矢最 CLI :关中断 POPDS 弹栈 IN AL.21H ;读8259中断屏蔽字 ANDAL 7FH :开中断7 OUT2IH AL MOVCX 000AH A1:CMPCX,0000H JNZA2 IN AL,21H :读8259中断屏蔽字 OR AL.80H :关中断7 OUT 2IH,AL A2:STI JMPAI IRQ7:MOV AX,0137H :中断程序入口 6
6 KK2+ o KK2- o KK1- o o IRQ7 KK1+ o 8259 实验内容:程序执行时,每次响应外部中断 IRQ7 时(按 KK2 微动开关),显示屏 上会显示字符“7”。中断 10 次后(按下 10 次),系统处于停机状态。 程序如下:(A9-1.ASM) STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE START: PUSH DS ;保存数据段 MOV AX, 0000H MOV DS, AX ;数据段清 0 MOV AX, OFFSET IRQ7 ;取中断程序入口地址(相对地址) ADD AX, 2000H ;加装载时 IP=2000H 地址(绝对地址) MOV SI, 003CH ;填 8259 中断 7 的中断矢量 MOV [SI], AX ;填偏移量矢量 MOV AX, 0000H ;段地址 CS=0000H MOV SI, 003EH MOV [SI], AX ;填段地址矢量 CLI ;关中断 POP DS ;弹栈 IN AL, 21H ;读 8259 中断屏蔽字 AND AL, 7FH ;开中断 7 OUT 21H, AL MOV CX, 000AH A1: CMP CX, 0000H JNZ A2 IN AL, 21H ;读 8259 中断屏蔽字 OR AL,80H ;关中断 7 OUT 21H, AL STI HLT A2: STI JMP A1 IRQ7:MOV AX, 0137H ;中断程序入口 8259
INT 10H MOV AX,0120H INT 10H MOV AL,20H OUT 20H,AL IRET CODE ENDS END START 实验步骤:▲按图示连接线路: ▲调入A91.ASM程序,经汇编、连接后装入系统 -0000:2000/运行程 ▲重复按动KK2开关,显示屏应显示“7”响应。当按下10次后,系统 处于停机状态,压CTRL+C返回监控。 2.8259应用实验(2) KK2 -0 KK2+ KKI- 8259 8259应用实验(2)线路 实验内容:主程序执行时,证时显示“MAN”,若有中断请求,则执行中断服务程 序,显示该中断号“6”或“7”:若正在执行较低级的中断 则允许比它优先级高的中断被 响应(IRQ6>RQ7)。主程序在执行过程中,每显示一个“MAN”,空一格。 程序:A9-2.ASM(略) 实验步骤:▲按图示连接线路: ▲调入A92ASM程序,经汇编、连接后装入系统: ▲键入G=0000:2000/运行程序,则屏幕上连续显示“MAIN”: ▲先后按动KK2和KKI开关来模拟中断请求信号,记录请求顺序及显 示结果。压CTRL+C返回监控。 思考题:此实验中,如果先按动KK2,再按下KK1(此时尚未显示“7”,显示结果 会怎样?为什么? 3.8259级连实验 本实验以系统中的8259作为主片,外接另一片8259作为从片,构成8259级连方 式的中断实验电路,如图示
7 INT 10H MOV AX, 0120H INT 10H DEC CX MOV AL, 20H OUT 20H, AL CLI IRET CODE ENDS END START 实验步骤:▲按图示连接线路; ▲调入 A9-1.ASM 程序,经汇编、连接后装入系统; ▲键入 G=0000:2000↙运行程序; ▲重复按动 KK2 开关,显示屏应显示“7”响应。当按下 10 次后,系统 处于停机状态,压 CTRL+C 返回监控。 2. 8259 应用实验(2) KK2- o KK2+ o KK1+ o o o IRQ7 IRQ6 KK1- o 8259 8259 应用实验(2)线路 实验内容:主程序执行时,延时显示“MAIN”,若有中断请求,则执行中断服务程 序,显示该中断号“6”或“7”;若正在执行较低级的中断,则允许比它优先级高的中断被 响应(IRQ6>IRQ7)。主程序在执行过程中,每显示一个“MAIN”,空一格。 程序:A9-2.ASM(略) 实验步骤:▲按图示连接线路; ▲调入 A9-2.ASM 程序,经汇编、连接后装入系统; ▲键入 G=0000:2000↙运行程序,则屏幕上连续显示“MAIN”; ▲先后按动 KK2 和 KK1 开关来模拟中断请求信号,记录请求顺序及显 示结果。压 CTRL+C 返回监控。 思考题:此实验中,如果先按动 KK2,再按下 KK1(此时尚未显示“7”,显示结果 会怎样?为什么? 3.8259 级连实验 本实验以系统中的 8259 作为主片,外接另一片 8259 作为从片,构成 8259 级连方 式的中断实验电路,如图示。 8259
CASO 0 CASO CASI KK'UNIT 片 IRQ7 xD7 8259级连实验线路 规定:主片的RQ7上连接从片,从片的RQ7接外部中断申请电路(R-S单脉冲触发 器):从片的中断矢量编号为30-37H,其命令寄存器组编址为00H和01H。 实验程序:A9.3.ASM(路) 实验步骤:▲按图示连接线路,沫意其中的A必须在开机上电之后 △调入A9-3.ASM 程序,经汇编、连接后装入系统: ▲键入G-0000:2000/运行程序,并通过按动KK1开关向从U片申请中断 每按动一次KK1,显示一个“7”字符,表明CPU响应了一次中断。 ▲压CTRL+C返回监控。 实验四 8255并行接口应用实验 一、实验目的: 1.学习并堂握8255的各种工作方式及其应用: 2,学习在系统接口实验单元上构告实验申路 实验设备 1.TDN86/51教学实验系统一台。 2.排线、导线若干。 三、实验内容及步: (1)系统中的8255芯片简介 1.系统中的8255芯片 系统中有 块8255芯片,位于机箱左下侧。8255的数据线、片选信号线、地址线 读写控制线等分别与系统总线相连,其A、B、C三个端口以排针形式引出,供8255 实验使用,其线路如图示。端口地址如表中所示
8 8259 级连实验线路 规定:主片的 IRQ7 上连接从片,从片的 IRQ7 接外部中断申请电路(R-S 单脉冲触发 器);从片的中断矢量编号为 30~37H,其命令寄存器组编址为 00H 和 01H。 实验程序:A9-3.ASM(略) 实验步骤:▲按图示连接线路,注意其中的 INTA 必须在开机上电之后; ▲调入 A9-3.ASM 程序,经汇编、连接后装入系统; ▲键入 G=0000:2000↙运行程序,并通过按动 KK1 开关向从片申请中断。 每按动一次 KK1,显示一个“7”字符,表明 CPU 响应了一次中断。 ▲压 CTRL+C 返回监控。 实验四 8255 并行接口应用实验 一、实验目的: 1.学习并掌握 8255 的各种工作方式及其应用; 2.学习在系统接口实验单元上构造实验电路。 二、实验设备: 1.TDN86/51 教学实验系统一台。 2.排线、导线若干。 三、实验内容及步骤: (1)系统中的 8255 芯片简介 1.系统中的 8255 芯片 系统中有一块 8255 芯片,位于机箱左下侧。8255 的数据线、片选信号线、地址线、 读写控制线等分别与系统总线相连,其 A、B、C 三个端口以排针形式引出,供 8255 实验使用,其线路如图示。端口地址如表中所示。 KK1+ KK UNIT 系 IOY0 统 XIOW 总 XIOR 线 XD0 · · XD7 CAS0 主 CAS1 CAS2 片 INTA IRQ7 CAS0 IR7 CAS1 CAS2 INTA INT 从 CS 片 WR RD D0 · · D7
信号线 寄存器 地址 60 B▣ 61H IOY3 C口 62H 控制寄存器 63H PAO 系 总 8255 RES RESET PC7 系统中的8255线路 3.接口实验单元中的开关和发光二极管电路 5 · SW-LFD UNIT (2)8255接口应用实验 A)线路如图示: PA7 D7 PB7 K7 25S SW-LED UNIT
9 信号线 寄存器 地址 IOY3 A 口 60H B 口 61H C 口 62H 控制寄存器 63H 系 统 总 线 系统中的 8255 线路 3. 接口实验单元中的开关和发光二极管电路 (2)8255 接口应用实验一 A) 线路如图示: 8255 SW-LED UNIT D0 PA0 · · · · D7 PA7 RD PB0 WR 8255 · A0 · A1 PB7 RESET PC0 CS · · PC7 XD0 XD1 XD6 XD7 XIOR XIOW XA0 XA1 RESET IOY3 +5v • • • R • • • LED • • • D0 D7 K0 • • • K7 • • • • • 1 +5V 0 SW-LED UNIT PA7 PA0 PB7 PB0 D7 D0 K7 K0 D7 D0 K7 K0
B)实验内容: 设定8255中的端口A工作在方式0且为输出口,端口B工作在方式0且为输 入口。用一组开关信号接入端口B,端口A的输出线接到一组发光 二极管上,然后 随过对8255芯片编程实现其输入输出功能。实验程序为A10-1.ASM。 程序如下:(A10-L.ASM) STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE START:MOV AL,82H OUT63H AL JMPAI CODE ENDS END START 9实验步骤: ▲按图示线路接线: ▲调入A10-1.ASM程序,经汇编、连接后装入系统: ▲运行程序,拨动开关组,注意观察发光二极管的亮和灭与其应具有对应关系。 思考:如果用A口作为输入口,B口作为输出口,实验线路接法应如何改动?程 序应作何调整? (3)8255接口应用实验二 A)线路如图示: 82591R070 0 PCO PA> KK UNIT KKI- PC2 PBO 0- 0 SWLED UNTT B)实验内容: 设定825中的端口A工作在方式0且为输出口,端口B工作在方式1且 为输入口。端口C的PC2作为选通输入信号STB,PC0作为中断请求信号 NTR。用一组开关信号接入端口B,端口A的输出线接到一组发光二极管上。 当B口数据准备就绪后,通过发STB信号来请求CPU读取端口B的数据并 送到端口A输出显示。实验程序为A10-2.ASM(略)
10 B) 实验内容: 设定 8255 中的端口 A 工作在方式 0 且为输出口,端口 B 工作在方式 0 且为输 入口。用一组开关信号接入端口 B,端口 A 的输出线接到一组发光二极管上,然后 通过对 8255 芯片编程实现其输入输出功能。实验程序为 A10-1.ASM。 程序如下:(A10-1.ASM) STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE START: MOV AL, 82H OUT 63H, AL A1: IN 61H OUT 60H, AL JMP A1 CODE ENDS END START C) 实验步骤: ▲按图示线路接线; ▲调入 A10-1.ASM 程序,经汇编、连接后装入系统; ▲运行程序,拨动开关组,注意观察发光二极管的亮和灭与其应具有对应关系。 思考:如果用 A 口作为输入口,B 口作为输出口,实验线路接法应如何改动?程 序应作何调整? (3)8255 接口应用实验二 A) 线路如图示: 8259 IRQ7 KK UNIT KK1- 8255 SW-LED UNIT B) 实验内容: 设定 8255 中的端口 A 工作在方式 0 且为输出口,端口 B 工作在方式 1 且 为输入口。端口 C 的 PC2 作为选通输入信号 STB,PC0 作为中断请求信号 INTR。用一组开关信号接入端口 B,端口 A 的输出线接到一组发光二极管上。 当 B 口数据准备就绪后,通过发 STB 信号来请求 CPU 读取端口 B 的数据并 送到端口 A 输出显示。实验程序为 A10-2.ASM(略)。 PC0 PA7 PC2 PA0 PB7 PB0 D7 D0 K7 K0