搜索
您的当前位置:首页正文

数码管显示实验报告

来源:知库网


HUNAN UNIVERSITY

课程实验报告

实验名称 学生姓名 学生学号 专业班级 指导老师

数码管显示实验

2014-12-17

实验三 数码管显示实验

一、 实验目的

1. 学习按键扫描的原理及电路接法; 2. 掌握利用8255完成按键扫描及显示。

二、 实验内容

连接8255与键盘扫描单元,编写程序完成按键扫描功能,并将读到的按键值依次显示在数码管上。

图 1 键盘、数码管电路原理图

三、 实验原理

实验系统中的键盘及数码管显示单元提供了4行×4列共16个按键,6位7段数码管也接成扫描电路方式。共用段位控制信号A~Dp,各自独立的公共端

X1~X6,其中X1~X4是与列扫描信号复用,行扫描信号为Y1~Y4。电路原理如图 1所示。

四、 实验步骤

1、 数码管循环显示1-9

a. 实验接线图如图2所示,按图连接实验线路图,实物图 3如所示;

图 2 实验接线图

b. 运行Tdpit集成操作软件,根据实验内容,编写实验程序,编译、链接,

代码如下:

IOY0 EQU 3000H ;片选IOY0对应的端口始地址

DATA1 SEGMENT

NUM DB 0FCH,60H,0DAH,0F2H,66H,0B6H,0BEH,0E0H,0FEH,0F6H DATA1 ENDS

STACK1 SEGMENT STACK DW 256 DUP(?) STACK1 ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA1 START:

MOV AX,DATA1 MOV DS,AX

MOV DX,IOY0 LEA SI,NUM MOV CX,10

XOR AX,AX NEXT:

MOV AL,[SI] MOV AH,1FH

OUT DX,AX CALL DALLY INC SI

LOOP NEXT

JMP START

DALLY PROC NEAR ;软件延时子程序 PUSH CX D1: D2:

PUSH AX

MOV CX,0FFFH MOV AX,0FFFFH DEC AX

JNZ D2 LOOP D1 POP AX POP CX RET DALLY ENDP

CODE ENDS

END START

c. 运行程序,观察数码管的显示,循环显示0-9,如图 3所示,达到预期

要求。

图 3 循环显示0-9

2、 数码管两位‘同时’显示不同的数字

实验步骤同上,但代码更改如下(更改部分,红色标出):

IOY0

EQU

3000H

;片选IOY0对应的端口始地址

DATA1 SEGMENT

NUM DB 0FCH,60H,0DAH,0F2H,66H,0B6H,0BEH,0E0H,0FEH,0F6H DATA1 ENDS

STACK1 SEGMENT STACK DW 256 DUP(?) STACK1 ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA1 START:

MOV AX,DATA1 MOV DS,AX

MOV DX,IOY0 LEA SI,NUM MOV CX,10

XOR AX,AX NEXT:

MOV AL,[SI] MOV AH,1FH

OUT DX,AX CALL DALLY

MOV AL,[SI+3] MOV AH,2FH OUT DX,AX

CALL DALLY JMP NEXT

DALLY PROC NEAR PUSH CX PUSH AX

MOV CX,00FFH D1: MOV AX,000FFH D2: DEC AX JNZ D2 LOOP D1 POP AX POP CX RET DALLY ENDP

CODE ENDS END START

实验截图如所示。

;软件延时子程序

图 4 数码管’同时’显示两位数

五、 实验总结

‘同时’将两个数字显示在数码管上并非真正同时显示在数码管上,而是两个数码管依次显示,当然频率很高。因为视觉暂留,从而让人误认为两个数字是同时显示的。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top