8255a1(七段数码管)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验4七段数码管

教具、教学素材准备:实验箱,多媒体

教学方法:网络讲授与实作

教学时数:2

一、实验目的

掌握数码管显示数字的原理

二、实验原理和内容

按图22连接好电路,将8255的A口PA0~PA6分别与七段数码管的段码驱动

输入端a~g相连,位码驱动输入端S1接+5V(选中),S0、dp接地(关闭)。编程

从键盘输入一位十进制数字(0~9),在七段数码管上显示出来。

三、编程

1、实验台上的七段数码管为共阴型,段码采用同相驱动,输入端加高电平,选中的数码,位码加反相驱动器,位码输入端高电平选中。

2、七段数码管的字型代码表如下表:

data segment

ioport equ 0d400h-0280h

io8255a equ ioport+288h

io8255b equ ioport+28bh

led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh mesg1 db 0dh,0ah,'Input a num(0--9h):',0dh,0ah,'$' data ends

code segment

assume cs:code,ds:data

start:mov ax,data

mov ds,ax

mov dx,io8255b;使8255的A口为输出方式mov ax,80h

out dx,alsss:mov dx,offset mesg1;显示提示信息mov ah,09h

int 21h

mov ah,01;从键盘接收字符

int 21h

cmp al,'0';是否小于0

jl exit;若是则退出

cmp al,'9';是否大于9

jg exit;若是则退出

sub al,30h;将所得字符的ASCII码减30H mov bx,offset led;bx为数码表的起始地址xlat;求出相应的段码

mov dx,io8255a;从8255的A口输出

out dx,al

jmp sss;转SSS

exit:mov ah,4ch;返回DOS

int 21h

code ends

end start

教学后记:

相关文档
最新文档