6-6 8255并行接口(LED)

原创 2016年06月01日 19:09:23

一、实验目的

(1) 学习pc扩展i/o接口的方法。

(2)学习编制数据输出程序的设计方法。

二、实验要求

以8255 c 口为输出口,控制8个单色LED。

三、实验说明

工作方式0;

pa、pb、pc为独立输入输出的并行口;

寄存器对应的端口地址:

pa:288h;

pb:289h;

pc:28ah;

控制口:28bh。

cs 连接288h~28fh。 适当调节LED亮灭的延迟时间。

四、汇编程序

data segment

ioport equ 0ff00h-0280h
io8255a equ ioport+288h
io8255b equ ioport+289h
io8255c equ ioport+28ah
io8255d equ ioport+28bh

mess1 db '左循环按1',0dh,0ah,'$'
db '右循环按2',0dh,0ah,'$'
db '间隔闪烁按3',0dh,0ah,'$'
db '退出按4',0dh,0ah,'$'
mess2 db '按无效键继续选择',0dh,0ah,'$'
mess3 db '按任意键退回主菜单',0dh,0ah,'$'
data ends

stack segment
sta db 20 dup(?)
top equ length sta
stack ends

code segment
assume cs:code,ds:data,ss:stack,es:data
start: mov ax,data
mov ds,ax ;初始化
mov ax,stack
mov ss,ax
mov sp,top
mov sp,ax
mov dx,io8255d
mov al,80h
out dx,al
bg: lea dx,mess1
mov ah,09h
int 21h
mov ah,08h ;等待有键按下
int 21h
push ax
lea dx,mess3
mov ah,09h
int 21h
pop ax
mov ah,al
cmp al,'1'
jz zxh ;进入各种循环
mov al,ah
cmp al,'2'
jz yxh
mov al,ah
cmp al,'3'
jz jgs
mov al,ah
cmp al,'4'
jnz wx
jmp qit
wx: lea dx,mess2 ;无效按键提示信息
mov ah,09h
int 21h
jmp bg
zxh: mov dx,io8255c ;左循环
mov al,0feh
bb: out dx,al
mov cx,01h
l1: loop l1
rol al,1
push ax
push dx
mov dl,0ffh
mov ah,06h
int 21h
jnz bg
pop dx
pop ax
jmp bb
yxh: mov dx,io8255c
mov al,80h
ee: out dx,al
mov cx,0fffh
l2: loop l2
ror al,1
push ax
push dx
mov dl,0ffh
mov ah,06h
int 21h
jnz bg
pop dx
pop ax
jmp ee
jgs: mov dx,io8255c
mov al,55h
hh: out dx,al
mov cx,0ffffh
l3: loop l3
not al
push ax
push dx
mov dl,0ffh
mov ah,06h
int 21h
jnz bg1
pop dx
pop ax
jmp hh
bg1: jmp bg
qit: mov ax,4c00h
int 21h
code ends
end start
说明:
左循环 改为: mov cx,01h
油循环 改为: mov al,80h

版权声明:本文为博主原创文章,未经博主允许不得转载。

微机原理复习笔记—可编程并行接口芯片8255

通过8255 CPU可直接和外设相连3个独立的8位并行输入/输出接口可通过编程设置个端口的工作方式和数据传输方向(入/出/双向) 8255 片选信号 读写控制逻辑的 A0 A1 关系如何..........
  • bigshady
  • bigshady
  • 2011年01月03日 20:40
  • 2930

微机原理8255并行接口实验-红绿灯的模拟实现

安徽大学2016年微机原理实验考试题:微机原理8255并行接口实验-红绿灯的模拟实现 SSTACK SEGMENT STACK DW 32 DUP(?) SSTACK ENDS COD...
  • Fitz1318
  • Fitz1318
  • 2016年12月18日 15:33
  • 1877

8086汇编控制8255实现开关控制LED以及跑马灯

8个开关控制8个LED+跑马灯 ;端口地址 PORT_A EQU 280H PORT_B EQU 281H PORT_CR EQU 283H...
  • icurious
  • icurious
  • 2016年06月12日 16:56
  • 3672

应用8255A控制LED小灯开闭(附代码注释)

设8255A的A口和B口都工作在方式0,A口作为输出口,接有8个开关;B口为输出口,接有8个发光二极管.系统硬件电路中不断扫描开关Ki,当K0闭合时,点亮LED0,LED2,LED4,LED6,其他L...
  • zer1123
  • zer1123
  • 2017年01月01日 17:24
  • 1322

8255A与七段共阳LED连接电路实现循环显示数码0~9

利用8255A与七段共阳LED连接电路实现循环显示数码0~9。(可利用查表指令XLAT实现。) 程序代码如下:DATAS SEGMENT ;此处输入数据段代码 TAB DB 0C0H,...
  • dh0144298
  • dh0144298
  • 2016年05月25日 14:55
  • 922

8255A编程基础

8255A   可编程并行I / O接口芯片8255A 7.2 可编程并行接口   由于我们现在常用的微机系统均以并行方式处理数据,所以,并行接口也是最常用的接口电路。并行接口有以下几方面...
  • luo_yuan_yao
  • luo_yuan_yao
  • 2013年05月01日 21:36
  • 2788

8255实现数码显示管显示两位数字

8255实现数码显示管显示两位数字
  • ismahui
  • ismahui
  • 2016年12月25日 22:45
  • 1163

微机接口实验一 :8255并行接口实验

微机接口实验一 :8255并行接口实验 8255接口芯片非常重要的,使用非常简单,在以后的实验会经常使用到1.1 实验内容 编写一个基本输入输出程序,使8255的A口为输入,B口为输出,完成拨动...
  • Tsavorite
  • Tsavorite
  • 2017年11月30日 10:03
  • 526

8255实现秒表

天生的厌恶,没想到...... 最近进行了一次硬件课程设计,当时,听老师说起什么交通灯,什么流水灯的时候,我都懵了。想想上学期的微机原理课,几乎每节课都逃了,就连实验课都逃了,还以为已经逃之夭夭了,没...
  • downlode
  • downlode
  • 2013年10月07日 23:26
  • 1156

8255的0方式及应用

stack segment dw 200 dup(?) stack ends data segment para public 'data' t dw 0 ...
  • u014595256
  • u014595256
  • 2016年06月11日 19:14
  • 243
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:6-6 8255并行接口(LED)
举报原因:
原因补充:

(最多只允许输入30个字)