实验七可编程并行接口芯片8255A的使用1.doc
文本预览下载声明
实验七 可编程并行接口芯片8255A的使用1
一、实验目的
了解可编程并行接口芯片8255的内部结构、工作方式、初始化编程及应用。
实验设备
显示器、鼠标、键盘一件;
QTH-2008PC 32位微机教学实验仪一套。
实验说明
1、8255A的内部结构:
(1)数据总线缓冲器:这是一个双向三态的8位数据缓冲器,它是8255A与微机系统数据总线的接口。输入输的数据、CPU输出的控制字以及CPU输入的状态信息都是通过这个缓冲器传送的。
(2)三个端口A,B和C:A端口包含一个8位数据输出锁存器和缓冲器,一个8位数据输入锁存器。B端口包含一个8位数据输入/输出锁存器和缓冲器,一个8位数据输入缓冲器。C端口包含一个8位数据输出锁存器及缓冲器,一个8位数据输入缓冲器(输入没有锁存器)。(3)A组和B组控制电路:这是两组根据CPU输出的控制字控制8255工作方式的电路,它们对于CPU而言,共用一个端口地址相同的控制字寄存器,接收CPU输出的一字节方式控制字或对C口按位复位字命令。方式控制字的高5位决定A组工作方式,低3位决定B组的工作方式。对C口按位复位命令字可对C口的每一位实现置位或复位。A组控制电路控制A口和C口上半部,B组控制电路控制B口和C口下半部。
(4)读写控制逻辑:用来控制把CPU输出的控制字或数据送至相应端口,也由它来控制把状态信息或输入数据通过相应的端口送到CPU。
2、8255A的工作方式:
方式0—基本输入输出方式;方式1—选通输入输出方式;方式2—双向选通输入输出方式。、8255A的控制字:1 D6 D5 D4 D3 D2 D1 D0 特
征
位 A组方式
00=方式 01=方式1
1X=方式2 A口
0=输出
1=输入 C口高4位
0=输出
1=输入 B组方式
0=方式0
1=方式1 B口
0=输出
1=输入 C口低4位
0=输出
1=输入 图 8255A方式控制字0 D6 D5 D4 D3 D2 D1 D0 特征位 不用 位选择
000=C口0位……111=C口7位 0=复位
1=置位 图 C口按位置位/复位控制字
实验原理图图可编程并行接口8255电路实验内容
实验:利用8255的A口、B口发光二极管。
实验步骤
实验连线
该模块的WR、RD分别连到总线接口模块的IOWR、IORD。
该模块的数据(AD0~AD7)、地址线(A0~A7)分别连到总线接口模块的数据(D0~D7)、地址线(A0~A7)。
8255模块选通线CE连到总线接口模块的IOY0。
8255的PA0~PA7~;8255的PB0~PB7发光二极管L~L。运行程序MY_STACK SEGMENT PARA STACK
DB 100 DUP(?)
MY_STACK ENDS
MY_DATA SEGMENT PARA DATA
P8255_A DW 0180H
P8255_B DW 0181H
P8255_C DW 0182H
P8255_MODE DW 0183H
DELAY_SET EQU 3FFH ;延时常数
MY_DATA ENDs
MY_CODE SEGMENT PARA CODE
MY_PROC PROC FAR
ASSUME CS:MY_CODE, DS:MY_DATA, SS:MY_STACK
START: MOV AX,MY_DATA
MOV DS,AX
MOV DX,P8255_MODE ;设置8255控制字A口输入,B口输出
MOV AL,90H
OUT DX,AL
START1: MOV DX,P8255_A ;读取A口状态
IN AL,DX
MOV DX,P8255_B ;输出
OUT DX,AL
CALL DELAY
CALL BREAK
JMP START1
MY_PROC ENDP
DELAY PROC NEAR ;延时程序
PUSHF
PUSH DX
PUSH CX
MOV DX,DELAY_SET
D1: MOV CX,100
D2: DEC CX ;-1
JNZ D2
DEC DX
JNZ D1
POP CX
POP DX
POPF
RET
DELA
显示全部