实验五 8255并行数据传送实验
一、实验目的与要求
1、了解8255芯片的工作原理,熟悉其初始化编程方法以及输入、输出程序设计技巧。学会使用8255并行接口芯片实现各种控制功能,如本实验(控制交通灯)等。 892、熟悉8255内部结构和与8088的接口逻辑,熟悉8255芯片的3种工作方式以及控制字格式。 3、认真预习本节实验内容,尝试自行编写程序,填写实验报告。 二、实验设备 STAR系列实验仪一套、PC机一台 三、实验内容 1、编写程序:使用8255的PA0..2、PA4..6控制LED指示灯,实现并行数据传送功能。 2、连接线路验证8255的功能,熟悉它的使用方法。 四、实验原理 G6区:发光管、按键、开关 JP65R107VCCJP6312DS3212345678470DS35DS36DS37DS38DS39DS40DS41DS42510510510510510510510510R111R112R113R114R115R116R117R118 发光管电路原理图 JP65:发光管控制接口,0-灯亮,1-灯灭 JP74VCC12345678 JP80R11912345678910KVCC12345678R12412345678910KS29S30S31S32S33S34S35S36S21S22S23S24S25S26S27S28 按键电路原理图 开关电路原理图 JP74:按键控制接口;按下-0信号,松开-1信号 JP80:开关控制接口;闭合-0信号,断开-1信号 VCC510U36D0D1D2D3D4D5D6D7RDWR343332313029282753698356D0D1D2D3D4D5D6D7RDWRA0A1RESETCSPA0PA1PA2PA3PA4PA5PA6PA7PB0PB1PB2PB3PB4PB5PB6PB7PC0PC1PC2PC3PC4PC5PC6PC7825543214039383718192021222324251415161713121110PC0PC1PC2PC3PC4PC5PC6PC7510R111R11212345678DS35DS36DS37DS38DS39DS40DS41DS42510R113510R114510R115510R116510R117510R118A0A0A1A1CS1(0F000H)CSRST
8255方式选择控制字:
五、实验步骤
1、连线说明: B4区:CS、A0、A1 —— A3区:CS1、A0、A1 B4区:JP56(PA口) —— G6区:JP65 B4区:JP52(PC口) —— G6区:JP74(按键)或JP80(开关) 2、下面2个编程题由老师做实验前抽选1个,按题目要求完成完整汇编程序编程,并编译、链接、运行,如能成功运行请叫老师至本组实验台前检查运行结果。8255工作在方式0,其端口地址为0F000H~0F003H。
(1)实现CPU由8255的C端口通过查询方式读按键,当按下任意一个键LED指示灯由右至左依次亮1秒后灭,不循环,亮一次后程序结束。
(2) 实现CPU由8255的C端口读开关,当任意一个或多个开关上拨,对应LED指示灯亮,当8个开关全部上拨则灯全亮1秒后程序结束。 以下是延时0.5秒子程序范例:
DL500ms
DL500ms1:
DL500ms
代码编写与运行 .MODEL TINY
PROC PUSH MOV LOOP POP RET ENDP
NEAR CX
CX,60000 DL500ms1 CX
COM_ADD PA_ADD PB_ADD PC_ADD .STACK 100 .CODE
START:MOV
MOV OUT
MOV MOV OUT
EQU 0F003H EQU 0F000H EQU 0F000H EQU 0F000H
DX,COM_ADD
AL,89H ;PA、PB为基本输出模式,PC为基本输入模式 DX,AL DX,PA_ADD AL,0FFH DX,AL
;灯全熄灭
START1:MOV DX,PC_ADD ;从端口C读入按键状态
IN AL,DX CMP AL,0FFH JNZ ZZ JMP START1 ZZ:MOV DX,PA_ADD
MOV CX,8 MOV AL,0FEH ABC:OUT DX,AL
CALL DL1S
ROL LOOP
AL,1 ABC
;PA端口输出模式
;灯移位
MOV AL,0FFH ;灯全灭 OUT DX,AL JMP OVER ;结束程序 DL500ms PROC NEAR PUSH CX MOV CX,60000 DL500ms1: LOOP DL500ms1 POP CX RET
DL500ms ENDP DL1S PROC NEAR
PUSH CX MOV CX,2 DL1S1:CALL DL500ms
LOOP DL1S1 POP CX RET
DL1S ENDP OVER:NOP END START
编译
流程图
开始 控制字传送 灯全熄灭 是否有按键? N
Y LED指示灯由右至左依次亮1秒后灭 结束