视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
基于51单片机的16×32点阵显示设计
2025-09-29 17:14:43 责编:小OO
文档
基于51单片机的16×32点阵显示设计

 单片机原理及接口技术 课程设计报告

题目:基于51单片机的16*32点阵显示设计

学    院:

专业班级:

学生姓名:

学    号:

指导教师:

日    期:

一、设计题目与要求

点阵屏以其醒目、快速换字等特点,已经进入了我们的生活,大街小巷每个地方都能看到点阵式广告屏,本课题设计一个基于51单片机的16*32点阵屏,能够实现2个字的静态显示、滚屏显示等。

二、总体设计方案

本设计以ATC51单片机为核心芯片的电路来实现,主要由ATC51芯片、时钟电路、复位电路、列扫描驱动电路(74HCl54、74HC04)、行驱动电路(74HC245)、键盘、16×16LED点阵7部分组成。将LED点阵的16条行线经行驱动电路与P2口和P3口连接,而LED点阵的32条列线则与5—32线译码器相连,列扫描信号由P1输出到译码器,P0号与键盘相连。这样,单片机C51按照设定的程序在P2和P3口输出与内部汉字对应的代码电平送至LED点阵的行选线(高电平驱动),同时在P1.1,P1.2,P1.3,P1.4,P1.5接口输出列选扫描信号(低电平驱动),从而选中相应的像素LED发光,并利用人眼的视觉暂留特性合成整个汉字的显示。

三、各模块电路设计

1、16×32LED点阵

16×32LED点阵可以用2个16×16LED点阵拼成,把2个16×16LED点阵相同的行连在一起就是1个16×32LED点阵。LED点阵结构图如下:

  

2、单片机最小系统

单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统。对51系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路。

3、列扫描驱动电路

列扫描驱动电路是由反相器、译码器组成的5线—32线译码器。译码器采用74HC154  4线—16线译码器,74HC154译码器可接受4位高电平有效二进制地址输入,并提供16个互斥的低有效输出。反相器采用74HC04。电路图如下:

4、行驱动电路

由于单片机的数据/地址/控制总线端口都有一定的负载能力,如果负载超过其负载能力,一般应加驱动器。本设计需要同时点亮多个LED,因此需要很大的电流输出,但51单片机的输出电流有限且不足以点亮多个LED,可能会导致LED亮度不足,所以用74HC245来放大电流。

四、总体设计电路图

五、程序设计

以UCDOS中文宋体字库为例,每一个字由16行16列的点阵组成显示。即国标汉字库中的每一个字均由256点阵来表示。我们可以把每一个点理解为一个像素,而把每一个字的字形理解为一幅图像。事实上这个汉字屏不仅可以显示汉字,也可以显示在256像素范围内的任何图形。

汉字可拆分为上部和下部,上部由8×16点阵组成,下部也由8×16点阵组成。利用字模提取软件得到汉字的代码,汉字的一列代码的上下两部分分别由P2、P3口输出,P1口同时输出列扫描代码,使该列的LED亮。依照这个方法转向第2列、第3列……,直至第16列的扫描,16列的LED快速连续地点亮,因为人眼的视觉暂留,LED显示屏会显示出一个汉字。

六、硬件实物图

七、心得体会

通过本次的课程设计制作,我熟悉了仿真软件Protues和Keil的基本操作与功能,同时也学会了利用单片机动手制作出复杂的电子作品。在设计方案的时候,我遇到了不少麻烦,特别是设计硬件电路图这一部分,因为我要制作16×32LED点阵,如果用书本上传统的方法会不够I/O口,因此我想出了列扫描采用5线—32线译码器的方法。因为没有5线—32线译码器的芯片,于是我在网上找到了利用74HCl54、74HC04连接成5线—32线译码器的方法。而在程序设计方面,因为我的设计运行的程序并不复杂,因此我很快就把程序编出来了,没有碰到什么难题。这次的课程设计大大增加了我对电子技术的兴趣和提高了我相关方面的技术。

附:单片机程序

       ORG 0000H

 START:MOV P2,#00H      ;清除画面

       MOV P3,#00H

  KEY1:MOV P0,#0FFH        ;扫描开关

       MOV A,P0

       CPL A

       ANL A,#0FFH

       JZ KEY1

       LCALL DELAY3

       MOV A,P0

       CPL A

       ANL A,#0FFH

       JZ KEY1

       JB ACC.0,AMOD1

       JB ACC.1,AMOD2

       JB ACC.2,AMOD3

 AMOD1:LJMP MOD1        ;转到子程序

 AMOD2:LJMP MOD2

 AMOD3:LJMP MOD3

  MOD1:MOV P0,#0FFH        ;静态显示

       MOV A,P0

       CPL A

       ANL A,#0FFH

       JZ L2

       LCALL DELAY3

       MOV A,P0

       CPL A

       ANL A,#0FFH

       JZ L2

       JB ACC.0,BMOD1

       JB ACC.1,BMOD2

       JB ACC.2,BMOD3

 BMOD1:LJMP MOD1

 BMOD2:LJMP MOD2

 BMOD3:LJMP MOD3

    L2:MOV R6,#32

       MOV R4,#00H

       MOV R0,#00H

    L3:MOV DPTR,#TABLE1

       MOV A,R4

       MOV P1,A

       INC R4

       MOV A,R0

       MOVC A,@A+DPTR

       MOV P2,A

       INC R0

       MOV A,R0

       MOVC A,@A+DPTR

       MOV P3,A

       INC R0

       MOV R3,#128

       DJNZ R3,$     ;延时

       MOV P2,#00H      ;清除画面

       MOV P3,#00H

       DJNZ R6,L3

       JMP MOD1

  MOD2:MOV 20H,#00H      ;滚屏显示

       MOV R4,#00H

    M1:MOV R1,#3FH      ;每幕停留时间

    M2:MOV R6,#32      ;列扫描数

       MOV R0,20H

       MOV P0,#0FFH

       MOV A,P0

       CPL A

       ANL A,#0FFH

       JZ M3

       LCALL DELAY3

       MOV A,P0

       CPL A

       ANL A,#0FFH

       JZ M3

       JB ACC.0,CMOD1

       JB ACC.1,CMOD2

       JB ACC.2,CMOD3

 CMOD1:LJMP MOD1

 CMOD2:LJMP MOD2

 CMOD3:LJMP MOD3

    M3:CALL READ      ;调用显示子程度

       INC R4

       DJNZ R6,M3

       MOV R4,#00

       DJNZ R1,M2

       MOV A,20H

       ADD A,#04      ;移动列数*2

       MOV 20H,A

       CJNE A,#192,M1  ;汉字数目*32

       JMP MOD2

  READ:MOV A,R4

       MOV P1,A

       MOV A,R0

       MOV DPTR,#TABLE2

       MOVC A,@A+DPTR

       MOV P2,A

       INC R0

       MOV A,R0

       MOVC A,@A+DPTR

       MOV P3,A

       INC R0

       MOV R3,#128

       DJNZ R3,$     ;延时

       MOV P2,#00H

       MOV P3,#00H

       RET

  MOD3:MOV P0,#0FFH        ;静态显示

       MOV A,P0

       CPL A

       ANL A,#0FFH

       JZ I2

       LCALL DELAY3

       MOV A,P0

       CPL A

       ANL A,#0FFH

       JZ I2

       JB ACC.0,DMOD1

       JB ACC.1,DMOD2

       JB ACC.2,DMOD3

 DMOD1:LJMP MOD1

 DMOD2:LJMP MOD2

 DMOD3:LJMP MOD3

    I2:MOV R6,#32

       MOV R4,#00H

       MOV R0,#00H

    I3:MOV DPTR,#TABLE3

       MOV A,R4

       MOV P1,A

       INC R4

       MOV A,R0

       MOVC A,@A+DPTR

       MOV P2,A

       INC R0

       MOV A,R0

       MOVC A,@A+DPTR

       MOV P3,A

       INC R0

       MOV R3,#128

       DJNZ R3,$     ;延时

       MOV P2,#00H      ;清除画面

       MOV P3,#00H

       DJNZ R6,I3

       JMP MOD3

DELAY3:MOV R7,#10H

   D31:MOV R6,#0FFH

   D32:DJNZ R6,D32

       DJNZ R7,D31

       RET

TABLE1:                 ;至乐

DB 00H,00H,00H,40H,02H,40H,42H,44H,62H,44H,52H,44H,4AH,44H,46H,44H,42H,7FH,42H,44H,42H,44H,52H,44H,62H,44H,0C2H,44H,02H,40H,00H,40H

DB 00H,00H,0D8H,44H,0B4H,44H,93H,24H,0C8H,25H,00H,14H,0FCH,0DH,26H,05H,25H,0FFH,24H,05H,0FCH,0DH,00H,14H,0D8H,24H,0B4H,24H,93H,44H,0C8H,45H

TABLE2:                 ;欢迎光临

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

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

DB 00H,00H,04H,04H,74H,02H,5FH,0FFH,0F4H,55H,04H,55H,74H,7FH,0DFH,55H,74H,55H,24H,80H,18H,60H,0FH,1CH,0C8H,03H,08H,1CH,28H,60H,18H,80H

DB 00H,00H,40H,00H,40H,40H,42H,20H,0CCH,1FH,00H,20H,00H,40H,0FCH,4FH,04H,44H,02H,42H,00H,40H,0FCH,7FH,04H,42H,04H,44H,0FCH,43H,00H,40H

DB 00H,00H,40H,80H,40H,80H,42H,40H,44H,20H,58H,18H,0C0H,07H,40H,00H,7FH,00H,40H,00H,0C0H,3FH,50H,40H,48H,40H,46H,40H,40H,40H,40H,78H

DB 00H,00H,00H,00H,0FEH,7FH,22H,42H,22H,42H,3EH,7EH,22H,42H,0E2H,43H,10H,00H,08H,0FCH,0E7H,45H,24H,0FDH,24H,01H,24H,0FDH,0E4H,45H,04H,0FCH

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

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

TABLE3:                  ;I love U

DB 00H,00H,00H,00H,10H,40H,10H,40H,0F0H,7FH,10H,40H,10H,40H,00H,00H

DB 00H,00H,0C0H,03H,0E0H,07H,0F0H,0FH,0F0H,1FH,0F0H,3FH,0E0H,7FH,0C0H,0FFH,0E0H,7FH,0F0H,3FH,0F0H,1FH,0F0H,0FH,0E0H,07H,0C0H,03H,00H,00H,00H,00H

DB 10H,00H,0F0H,3FH,10H,40H,00H,40H,00H,40H,10H,40H,0F0H,3FH,10H,00H

       END下载本文

显示全文
专题