8255LED流水灯控制
实验四 8255 LED流水灯控制实验
一、实验目的
1、认识8255接口芯片、学习其在微机系统中的应用
2、8255编程要点指南
8255是一个通用的可编程的并行接口芯片,它提供有三个I/O口,每个口都可以通过编程设置为多种工作方式,在中小系统中应用广泛,其组成结构如下图。
★三个I/O口,分别是PA口、PB口和PC口。每个口提供八根数据线,如PA口线(PA0~PA7),用于连接外设。
★DB、CB和AB总线用于连接CPU三总线,DB用于接收来自CPU的控制命令字或数据,CB用于选择对8255数据口读或写操作,AB用于选择对哪个口读写操作。
★A组和B组控制电路用于编程控制PA口、PB口和PC口的工作方式选择。见下图控制命令字格式。
若采用A口的方式0来控制LED灯,则控制字为1000 0000B = 80H 。
★编程控制方法
a.设置控制命令字,使A口工作在方式0下——向控制口写控制命令字。
b.输出要点亮的LED数据——向A口写点亮数据。
c.8255基地址为0FF28H,则A口地址0FF28H,B口地址0FF29H,C口地址0FF2AH,控制口地址0FF2BH。
3. 实验系统搭建与使用
a.键盘显示器设置:JK开关置“系统”处,进入监控状态。
b.通讯选择设置:KB6开关置“88”处,并将随机配送的串行通讯线,一端与实验仪的RS232D型插座CZ1相连,另一端与PC机COM1或COM2串行口相连。
c.电路连接:将8255A芯片A口的PA0-PA7依次接Ll-L8,B口的PB0-PB3依次接L9-L12。
d.接通实验仪电源,+5V LED指示灯正常发光,实验仪数码管显示闪动P.,说明实验仪初始化成功,处于待命状态。(否则应及时关闭电源,待修正常后使用)
e.打开PC机电源,执行DJ8086K的集成调试软件,关于该软件的详细说明请参阅《DJ-8086K实验系统与PC机联机操作》。
4.LED流水灯程序设计
1)、实验要求
要求利用L1~L12灯实现LED流水灯。
2)实验分析
通过不断的延时点亮下一个LED灯。需要延时函数。
3)实验程序清单
① 控制LED1→LED8轮流点亮。
CODE SEGMENT
ASSUME CS:CODE
IOAPT EQU 0FF28H
IOBPT EQU 0FF29H
IOCPT EQU 0FF2AH
IOCONPT EQU 0FF2BH
ORG 1000H
START:CLC
MOV AL,80H
MOV DX,IOCONPT
OUT DX,AL ;设置控制字80H
MOV AL,0FEH
MOV DX,IOAPT
NEXT: OUT DX,AL ;点亮L1
CALL DELAY1
ROL AL,01H ;循环左移
JMP NEXT
DELAY1: PUSH AX ;延时程序
PUSH CX
MOV CX,0030H
DELY2: CALL DELAY2
LOOP DELY2
POP CX
POP AX
RET
DELAY2: PUSH CX
MOV CX,500H
DELA1: LOOP DELA1
POP CX
RET
CODE ENDS
END START
② 修改程序控制LED1→LED12轮流点亮。
提示:a.将指令MOV AL,0FEH改为MOV AX,0FFFEH
b.将指令OUT DX,AL 改为OUT DX,AX
C. 将指令ROL AL,01H 改为ROL AX,01H
四、实验 告要求
根据“LED流水灯程序设计”内容,修改程序,择其一实现其他I/O口控制、反向流水、间隔流水等效果。要求 告上有程序代码、操作方法和运算结果。
文章知识点与官方知识档案匹配,可进一步学习相关知识C技能树语句与控制流语句与程序块113118 人正在系统学习中 相关资源:专业LED灯光动画制作软件(安装后直接用!)_setup安装包-Delphi工具…
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!