admin管理员组

文章数量:1530913


2024年7月3日发(作者:)

目 录

目 录 ................................................................................................................................................ 0

1 任务及要求 ................................................................................................................................. 0

1.1

设计任务 .................................................................................................................................. 0

1.2

设计要求 .................................................................................................................................. 1

2 设计思想 ..................................................................................................................................... 1

2.1

硬件设计思想 .......................................................................................................................... 1

2.2

软件设计思想 .......................................................................................................................... 2

3 电路原理与电路图 ..................................................................................................................... 2

3.1

电路原理 .................................................................................................................................. 2

3.2电路原理图设计 ....................................................................................................................... 3

4 流程图与算法描述 ..................................................................................................................... 3

4.1

流程图 ...................................................................................................................................... 3

4.2

具体代码 .................................................................................................................................. 8

5 设计总结 ................................................................................................................................... 14

5.1

设计体会 ................................................................................................................................ 14

参考文献 .......................................................................................................................................... 15

1 任务及要求

1.1 设计任务

(1)单个LED显示

(2)LED数码管显示

(3)16*16点阵显示

1.2 设计要求

单个LED显示实现多种显示效果,数码管能稳定显示数字,16*16点阵图文LED显示屏

能显示图形和文字,图形或文字显示是动态的。以AT89C52单片机为控制核心,实现硬件电

路的设计、程序设计,并在PROTEUS平台实现仿真。

2 设计思想

2.1 硬件设计思想

(1)单个LED显示设计:选用8个发光二极管,它们的阳极接+5v电源,阴分别与P1

口的八个接口相连接(低电平有效),通过改变P1的值来实现多种显示效果。

(2)LED数码管显示

设计:LED数码管的8个接口通过74HC245驱动芯片与P1相连

接,4个片选端口与74HC139芯片连接,通过P3口的低两位和最高位来控制片选。

(3)16*16点阵显示设计:在PROTEUS中选择AT89C52(单片机)、RESPACK-8(上

拉电阻)、74HC245(驱动芯片)、74HC154(四-十六译码器)、MATRIX-8×8-BLUE(8×8

点阵)等元器件,将点阵拼成16×16点阵块(将行线与行线相连,列线与列线相连),行线由

单片机的P0、P2分别连驱动芯片共同控制,列线A1-A16由一块四-十六译码器74HC154控

制,74HC154由单片机的P3口控制。连线然后进行电气规则检查。P0口是一个8位漏极开

路的双向口I/O端口,当控制信号为低电平时,可做通用的I/O端口使用,当控制信号为高电

平时,作为数据、地址总线。值得注意的是,由于P0口作为通用I/O端口使用时,漏极处于

开路状态,所以需要接5-10欧的上拉电阻。P1口只能作为通用I/O口使用。P2口是一个多

功能的8位口,可以字节访问也可以位访问,其字节访问地址为A0H,位访问地址为A0H到

A7H。在做I/O口使用时,P2为一个准双向口,功能与P1口相同,作为地址输出时,P2口

可以输出程序存储器或片外数据存储器的高8位地址,与P0口输出的地址线一起构成16位

1

地址线,从而可分别寻址64KB的程序存储器或片外数据存储器。

2.2 软件设计思想

采用汇编语言编写程序,将程序在proteus中进行编译,生成.HEX文件,然后在设计环

境中单击AT89C52,加载程序,然后单击全速运行按钮,先观察到单个LED跑马灯显示效果,

然后是LED数码管的显示,最后是16*16点阵显示的动态的“邵阳学院”字样。

程序设计:

(1)单个LED:建立表格,通过@A+DPTTR指令查找一个值给P1口,延时,继续查找

给P1口,直到查找完所有的单个LED表格。

(2)LED数码管:先通过P3口的低两位和最高位,选定要显示的某一块,通过查找指令,

查找相应的值送P1口,再延时,送0FFH给P1口,熄灭显示,重复这些步骤,直到数码管显

示程序结束。

(3)16*16点阵显示:通过P3口的低四位与74HC145(4-16译码器)连接选中点阵中

的一列,查找表格给P0、P2各值,调用延时,如此扫描100次,再左移,这样循环实现流动

的字样。

3 电路原理与电路图

3.1 电路原理

一个针振电路、一个复位电路。一个AT89C52单片机做为控制电路,P0口借上拉电阻。

(1)单个LED显示:单片机的P1口与8个发光二极管的阴极相连,发光二极管的阳极

接+5的电压源,通过对P1口的调节控制其显示效果。

(2)LED数码管显示:P3的三个接口通过74HC139与数码管的片选端相连,控制显示

2

的块,P1口与74HC245驱动芯片相连,实现对数码管的数值输入。

(3)16*16点阵显示:点阵的列由P3口的低四位与74HC154(4-16译码器)相连,通过

改变P3口低四位的值来实现对点阵列的控制,P0口接74HC245驱动芯片,控制点阵上半部

分点阵的行,P2口接74HC245驱动芯片,控制点阵下半部分的行,共同达到对16*16点阵

行显示的控制。

3.2电路原理图设计

电路原理图如图3.2.1所示

图3.2.1

4 流程图与算法描述

4.1 流程图

3

(1)主流程图,如图4.1.1所示

主要描述整个仿真过程,控制各模块显示的顺序。先实现单个LED的显示,再显示LED

数码管,最后是16*16点阵的显示。

开始

单个LED显示

显示结束?

Y

数码管显示

显示结束?

Y

16*16点阵

显示结束?

Y

N

所有显示结束?

Y

结束

图4.1.1

4

N

N

N

(2)单个LED显示模块,如图4.1.2所示

主要描述跑马灯的显示过程

(3)LED数码管显示模块,如图4.1.3所示

通过都各显示块的选择,显示相应的数值

入口

R2赋值为96

表格中对应的值给P1

调用延时程序

R2-1=0?

Y

出口

N

N

入口

R1赋值为50

选中要显示的数

码块

送显示的数据

全部显示?

Y

R1-1=0?

Y

出口

5

N

图4.1.2

图4.1.3

(4)16*16LED显示模块,如图4.1.4所示

描述16*16的显示过程

6

入口

R2赋值为16

给高位赋值

给地位赋值

点亮该列

调用延时

熄灭该列

R2-1=0?

Y

N

显示下一列

显示下一个字

显示完?

Y

出口

图4.1.4

7

N

4.2 具体代码

ORG 0000H

LJMP START

START:MOV DPTR,#TAB1

MOV R2,#0

MOV P0,#00H

MOV P2,#00H

SETB P3.7

LP0:MOV A,R2

MOVC A,@A+DPTR

MOV P1,A

ACALL DELAY4

INC R2

CJNE R2,#96,LP0

ACALL DELAY1

ACALL DELAY1

MOV R1,#50

START2:MOV DPTR,#TAB2

MOV R5,#0

LP1:MOV A,R5

8

MOVC A,@A+DPTR

MOV P3,R5

MOV P1,A

ACALL DELAY2

ACALL DELAY2

MOV P1,#0FFH

INC R5

CJNE R5,#04H,LP1

DJNZ R1,START2

ACALL DELAY1

ACALL DELAY1

ACALL DELAY1

MOV R7,#5

MAIN:MOV R1,#00H;选择数据指针入口标志

MOV R2,#10H;列选线

MOV R5,#00H;寻字节显示

MOV R3,#00H;R3用于记录某一静态状态重复扫描次数,若到了100,则向右移动

一位格。

MOV R4,#00H;R4用于记录移动的格数,这里R4暂时只能在0-255之间变化。

MOV DPTR,#MING;

DISPLAY:DEC R2;

9

MOV P0,#00H

MOV P2,#00H

CJNE R2,#0000H,LOOP1;

MOV R2,#010H;

LOOP1:MOV A,R5;

ADD A,R4;这样最多只能显示8个文字,因为A只有8位。

ADD A,R4;

MOVC A,@A+DPTR;

MOV P0,A;

INC R5;

MOV A,R5;

ADD A,R4;

ADD A,R4;

MOVC A,@A+DPTR;

MOV P2,A;

INC R5;

MOV P3,R2;列选线

ACALL DELAY

CJNE R2,#010H,LOOP2;

MOV R5,#00H;

10

LOOP2:INC R3;

CJNE R3,#0005H,LOOP0;调节R3的最大值可以改变文字滚动速度。

INC R4;

CJNE R4,#050H,LOOP0;这里的#10H是代表存的文字个数,两个文字的话就是

#20H,实际上就是一个字移动16格。

DJNZ R7,LOOP7

ACALL DELAY1

ACALL DELAY1

LJMP START

LOOP7:MOV R4,#00H;

INC R1;

CJNE R1,#01H,LOOP5;

MOV DPTR,#MING;

LJMP LOOP0;

LOOP5:CJNE R1,#02H,LOOP6;

MOV DPTR,#MING;

LJMP LOOP0;

LOOP6:CJNE R1,#03H,LOOP0;

MOV DPTR,#MING;

MOV R1,#00H;

LOOP0:LJMP DISPLAY;

11

DELAY:MOV R6,#0050H;调节R6的值也可以改变文字滚动速度

DJNZ R6,$

RET

DELAY1:MOV R7,#10H

D11:MOV R6,#8EH

D00:MOV R5,#02H

DJNZ R5,$

DJNZ R6,D00

DJNZ R7,D11

RET

DELAY2:MOV R4,#55

D0:MOV R6,#72

D1:DJNZ R6,D1

DJNZ R4,D0

RET

DELAY4:MOV R7,#20

DL1:MOV R6,#26

DL0:MOV R5,#82H

DJNZ R5,$

DJNZ R6,DL0

12

DJNZ R7,DL1

RET

TAB1: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH

DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH

DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH

DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH

DB 0F0H,0FH,0F0H,0FH,0F0H,0FH,0F0H,0FH

DB 0FH,0F0H,0FH,0F0H,0FH,0F0H,0FH,0F0H

DB 0F0H,0FH,0F0H,0FH,0F0H,0FH,0F0H,0FH

DB 0FH,0F0H,0FH,0F0H,0FH,0F0H,0FH,0F0H

DB 0FEH,0FCH,0F8H,0F0H,0E0H,0C0H,80H,00H

DB 7FH,3FH,1FH,0FH,07H,03H,01H,00H

DB 0FEH,0FCH,0F8H,0F0H,0E0H,0C0H,80H,00H

DB 7FH,3FH,1FH,0FH,07H,03H,01H,00H

TAB2: DB 06H,5BH,4FH,66H

MING: DB 00H,00H,00H,00H,00H,00H,00H,00H

DB 00H,00H,00H,00H,00H,00H,00H,00H

DB 00H,00H,00H,00H,00H,00H,00H,00H

DB 00H,00H,00H,00H,00H,00H,00H,00H

DB 41H,00H,46H,7EH,78H,44H,40H,44H

13

DB 42H,44H,41H,44H,0FEH,0FEH,40H,40H

DB 7FH,0FFH,40H,20H,40H,10H,42H,08H

DB 4DH,04H,70H,88H,00H,70H,00H,00H

DB 00H,00H,7FH,0FFH,40H,10H,44H,08H

DB 5BH,10H,60H,0E0H,00H,00H,7FH,0FFH

DB 41H,02H,41H,02H,41H,02H,41H,02H

DB 41H,02H,0FFH,0FFH,40H,00H,00H,00H

DB 02H,20H,0CH,20H,88H,20H,69H,20H

DB 09H,20H,09H,22H,89H,21H,69H,7EH

DB 09H,60H,09H,0A0H,19H,20H,28H,20H

DB 0C8H,20H,0AH,60H,0CH,20H,00H,00H

DB 00H,00H,7FH,0FFH,44H,20H,5AH,10H

DB 69H,0E1H,30H,81H,24H,82H,24H,8CH

DB 0A4H,0F0H,64H,80H,24H,0FCH,2CH,82H

DB 25H,82H,28H,82H,30H,0EH,00H,00H

END

5 设计总结

5.1 设计体会

课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的

14

重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片

机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二

十一世纪的大学来说掌握单片机的开发技术是十分重要的。

回顾起此次单片机课程设计,我仍感慨颇多,的确,从选题到定稿,从理论到实践,在这

整整的几个星期里,可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固

了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我

懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与

实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和

独立思考的能力。在设计的过程中难免会遇到过各种各样的问题,同时在设计的过程中发现了

自己还有很多的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。

这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在江世明老师的辛勤指导

下,终于游逆而解。同时,在江世明老师那里我学得到很多实用的知识,在此我表示感谢!同

时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢!

参考文献

[1] 李泉溪.单片机原理与实例仿真[M].北京:北京航空航天大学出版社,2009

[2] 江世明.基于Protues的单片机应用技术[M].北京:电子工业出版社,2009

[3] 沈永林.嵌入式单片机技术[M].北京:清华大学出版社,2007

[4] 常东超.C程序设计教程[M].北京:清华大学出版社,2009

15


本文标签: 显示控制设计点阵