一、实验要求
利用实验箱提供的显示电路,动态显示一行数据.
二、实验目的
1. 了解数码管动态显示的原理。 2. 了解用总线方式控制数码管显示。
三、实验线路及连线
连接孔2 连线 连接孔1 KEY/LED_CS CS0 1 段码输出
(0x004H)
数据总线
位选通信号 (0x002H)
四、实验说明
1.本实验箱提供了6 位8段码LED显示电路,学生只要按地址输出相应数据,就可以实现对显示器的控制。显示共有6位,用动态方式显示。8位段码、6位位码是由两片74LS374输出。位码经MC1413或ULN2003倒相驱动后,选择相应显示位。
本实验箱中8位段码输出地址为0X004H,位码输出地址为0X002H。此处X是由KEY/LED CS 决定,参见地址译码。做键盘和LED实验时,需将KEY/LED CS 接到相应的地址译码上。以便用相应的地址来访问。例如,将KEY/LED CS 接到CS0上,则段码地址为08004H,位码地址为08002H。
七段数码管的字型代码表如下表: 显示字形 0 1 2 3 4 5 6 7 8 9 A b C d E F g f e d c b a 段码 0 1 1 1 1 1 1 3fh 0 0 0 0 1 1 0 06h 1 0 1 1 0 1 1 5bh 1 0 0 1 1 1 1 4fh 1 1 0 0 1 1 0 66h 1 1 0 1 1 0 1 6dh 1 1 1 1 1 0 1 7dh 0 0 0 0 1 1 1 07h 1 1 1 1 1 1 1 7fh 1 1 0 1 1 1 1 6fh 1 1 1 0 1 1 1 77h 1 1 1 1 1 0 0 7ch 0 1 1 1 0 0 1 39h 1 0 1 1 1 1 0 5eh 1 1 1 1 0 0 1 79h 1 1 1 0 0 0 1 71h a f b g e c d 。dp
五、程序参考程序、框图
开始 输出位选通信号 初始化显示参数 延时 关所有位显示 位选通信号移位 取显示数据 否 指向下一个显示数据 是 输出段码数据 6位完成 返回 OUTBIT equ 08002h ; 位控制口 OUTSEG equ 08004h ; 段控制口
data segment
LEDBuf db 6 dup(?) ; 显示缓冲 Num db 1 dup(?) ; 显示的数据 DelayT db 1 dup(?)
LEDMAP: ; 八段管显示码
db 3fh, 06h, 5bh, 4fh, 66h, 6dh, 7dh, 07h db 7fh, 6fh, 77h, 7ch, 39h, 5eh, 79h, 71h data ends
code segment
assume cs:code, ds:data
Delay proc near
push ax ; 延时子程序 push cx mov al, 0 mov cx,ax loop $ pop cx pop ax ret Delay endp
DisplayLED proc near
mov bx, offset LEDBuf
mov cl, 6 ; 共6个八段管 mov ah, 00100000b ; 从左边开始显示 DLoop:
mov dx, OUTBIT mov al, 0
out dx,al ; 关所有八段管 mov al, [bx] mov dx, OUTSEG out dx,al
mov dx, OUTBIT mov al, ah
out dx, al ; 显示一位八段管 push ax mov ah, 1 call Delay pop ax
shr ah, 1 inc bx dec cl jnz DLoop
mov dx, OUTBIT mov al, 0
out dx,al ; 关所有八段管 ret
DisplayLED endp
Start proc near
mov ax, data mov ds, ax mov Num, 0 MLoop:
inc Num mov ch,Num mov ah,0 mov cl,6
mov bx,offset LEDBuf FillBuf:
mov si, offset LEDMap mov al,ch and al,0fh
add ax,si mov si,ax
mov al,[si] ; 数据转换成显示码 mov [bx], al ; 显示码存入显示缓冲 inc bx inc ch dec cl
jnz FillBuf mov DelayT,20 DispAgain:
call DisplayLED ; 显示 dec DelayT jnz DispAgain jmp MLoop Start endp
code ends
end start
六、实验步骤
(1) 在实验箱断电的情况下连好线。 (2) 输入程序并检查,保存程序。 (3) “编译”程序。
(4) “全速执行”程序。 (5) 记录实验结果及分析。
七、思考题
(1) 请修改程序,使之只能显示012345,并让这五个数字固定显示(不产生移动) (2) 请分析本实验的显示刷新率是多少?若显示刷新率调慢会出现什么现象,试修改程序实现之。
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- xiaozhentang.com 版权所有 湘ICP备2023022495号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务