文档详情

微机接口_实验五七段数码管.doc

发布:2017-03-21约1.34千字共3页下载文档
文本预览下载声明
实 验 报 告 实验五 七段数码管 一、实验目的 掌握数码管显示数字的原理 二、实验设备 TPC-USB实验系统(块USB总线接口模块、一个扩展实验台及软件集成实验环境) 三、实验原理与内容 1、静态显示:按图5-1连接好电路,将8255的A口PA0~PA6分别与七段数码管的段码驱动 输入端a~g相连,位码驱动输入端S1接+5V(选中),S0、dp接地(关闭)。编程从键 盘输入一位十进制数字(0~9),在七段数码管上显示出来。 2、动态显示:按图5-2连接好电路,七段数码管段码连接不变,位码驱动输入端S1,S0 接8255 C口的PC1,PC0。编程在两个数码管上显示“56”。 动态显示(选作):使用图5-2的电路,编程在两个数码管上循环显示“00-99”。 四、编程提示 1、实验台上的七段数码管为共阴型,段码采用同相驱动,输入端加高电平,选中的数码 管亮,位码加反相驱动器,位码输入端高电平选中。 七段数码管的字型代码表如下表: 五、参考流程图(见图5-3、图5-4) 六、汇编程序 LED1.ASM data segment io8255a equ 288h io8255cw equ 28bh led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh mesg1 db 0dh,0ah,Input a num (0--9),other key is exit:,0dh,0ah,$ data ends code segment assume cs:code,ds:data start: mov ax,data ; data送到AX中 mov ds,ax ; 首地址 mov dx,io8255cw ; 控制寄存器端口地址送DX;使8255的A口为输出方式 mov ax,80h ;准备控制字,B out dx,al ;控制字送控制寄存器 sss: mov dx,offset mesg1 ;显示提示信息 mov ah,09h ;显示每次中断的提示信息(DS:DX=字符缓冲首址) 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 ;A口地址送到DX中 out dx,al ;从8255的A口输出 jmp sss ;转SSS exit: mov ah,4ch ;返回 int 21h ;执行调用 code ends end start
显示全部
相似文档