目录
8.2.1实验目的
1.学习并掌握 8255 的工作方式及其应用
2.掌握 8255 典型应用电路的接法。
8.2.2 实验设备
PC 机一台,TDX-PITE 实验装置一套
8.2.3 实验内容
1.基本输入输出实验。编写程序,使 8255 的 A 口为输出,B 口为输入,完成拨动开关到数据灯的数据传输。要求只要开关拨动,数据灯的显示就发生相应改变。
2.流水灯显示实验。编写程序,使 8255 的A 口和B 口均为输出,数据灯 D7~DO 由左向右,每次仅亮一个灯,循环显示,D15~D8 与D7~DO 正相反,由右向左,每次仅点亮个灯,循环显示。
3.方式 1输入输出实验。编写程序,使 8255 工作在方式 1 控制下的 A 口输入,B 口输
出。
8.2.4实验原理
并行接口是以数据的字节为单位与 I/O 设备或被控制对象之间传递信息。CPU 和接口之间的数据传送总是并行的,即可以同时传递 8 位、16 位或 32 位等。8255 可编程外围接口芯片是Intel 公司生产的通用并行I/0 接口芯片,它具有 A、B、C 三个并行接口,用+5V 单电源供电,能在以下三种方式下工作:方式 0--基本输入/输出方式、方式 1--选通输入/输出方式、方式 2--双向选通工作方式。8255 的内部结构及引脚如图 8.2.1 所示,8255 工作方式控制字和 C 口按位置位/复位控制字格式如图 8.2.2 所示。
8.2.5实验步骤
1. 基本输入输出实验本实验使 8255 端口 A 工作在方式0 并作为输出口,端口 B 工作在方式 0 作为输入口。用一组开关信号接入端口 B,端口 A输出线接至一组数据灯上,然后通过对 8255 芯片编程来
实现输入输出功能。具体实验步骤如下:
(1) 实验接线图如图 8.2.4 所示,按图连接实验线路图。
(2) 编写实验程序(例程文件名为: A82551.ASM) ,经编译、连接无误后装入系统
(3) 运行程序,改变拨动开关,同时观察 LED 显示,验证程序功能。
2. 流水灯显示实验使 8255 的 A 口和 B 口均为输出,数据灯 D7~DO 由左向右,每次仅亮一个灯,循环显示,D15~D8与D7~DO 正好相反,由右向左,每次仅点亮一个灯,循环显示。实验接线图如图 8.2.5 所示。实验步骤如下所述:
(1) 按图 8.2.5 连接实验线路图。
(2) 编写实验程序(例程文件名为: A82552.ASM)经编译、链接无误后装入系统。
(3) 运行程序,观察 LED 灯的显示,验证程序功能。
(4) 自己改变流水灯的方式,编写程序代码。
;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================
IOY0 EQU 0600H ;片选IOY0对应的端口始地址
MY8255_A EQU IOY0+00H*2 ;8255的A口地址
MY8255_B EQU IOY0+01H*2 ;8255的B口地址
MY8255_C EQU IOY0+02H*2 ;8255的C口地址
MY8255_MODE EQU IOY0+03H*2 ;8255的控制寄存器地址
SSTACK SEGMENT STACK
DW 32 DUP(?)
SSTACK ENDS
CODE SEGMENT
ASSUME CS:CODE
START: MOV DX, MY8255_MODE
MOV AL, 80H
OUT DX, AL
MOV BX, 8001H
AA1: MOV DX, MY8255_A
MOV AL, BH
OUT DX, AL
ROR BH, 1
MOV DX, MY8255_B
MOV AL, BL
OUT DX, AL
ROL BL, 1
CALL DELAY
CALL DELAY
JMP AA1
DELAY: PUSH CX
MOV CX, 0F000H
AA2: PUSH AX
POP AX
LOOP AA2
POP CX
RET
CODE ENDS
END START
3.方式1 输入输出实验
本实验使 8255 端口 A 工作在方式 并作为输出口,端口 B 工作在方式 1 并作为输入口则端口 C 的 PC2 成为选通信号输入端 STBB,PCO 成为中断请求信号输出端INTRB。当 B口数据就绪后,通过发 STBB 信号来请求 CPU 读取端口 B 数据送端口 A输出显示。用一组开关信号接入端口 B,端口 A 输出线接至一组数据灯上。具体实验步骤如下:
(1)按图 8.2.6 连接实验线路图。
(2)编写实验程序(例程文件名为: A82553.ASM),经编译、链接无误后装入系统。
(3) 运行程序,然后改变拨动开关,准备好后,按动 KK1,同时观察数据灯显示,应与
开关组信号一致。