基于51单片机的点阵式汉字电子显示屏的设计文档格式.docx
《基于51单片机的点阵式汉字电子显示屏的设计文档格式.docx》由会员分享,可在线阅读,更多相关《基于51单片机的点阵式汉字电子显示屏的设计文档格式.docx(16页珍藏版)》请在冰豆网上搜索。
6
第三部分:
软件设计·
第四部分:
总结·
7
第五部分:
附录·
一.实验源程序·
二.材料清单·
14
设计题目:
作者:
***指导老师:
*******
摘要:
由点阵LED组成的汉字显示屏在工工程所应用非常广泛。
例如:
车站的发出时间提示、股票大厅的股票价格显示板、商场的活动广告栏、候机厅的飞机起飞时间表等等。
点阵式显示器的特点是可以按照需要的大小、形状和颜色进行组合,用单片机控制实现各种文字或图形的变化,达到广告宣传和提示的目的。
关键字:
LED,点阵式,显示屏,AT89C51
设计要求
1.以MCS-51系列的单片机为核心器件,组成一个点阵式汉字显示屏。
2.显示屏由一块16*16LED点阵显示器组成,可以依次显示四个汉字。
3.通过编程能够随时对汉字进行修改、调整。
硬件电路的设计
一.设计思路
根据设计要求,初步确定设计方案如下:
1.选择4片74LS273作为16*16点阵LED显示器的数据锁存器;
2.1#、2#锁存器分别控制上八行和下八行,3#、4#锁存器分别控制左八列和右八列;
3.P0口作为I/O口,输出行数据和控制信号;
4.P2口作为I/O口,与“写”控制信号相配合,输出列控制信号;
5.通过编程依次显示汉字“欢迎光临”。
二.硬件电路设计框图
根据设计要求与设计思路,硬件电路框图如图2.2.1所示。
硬件电路结构有六个部分组成:
时钟电路、复位电路、点阵显示器阳极驱动电路、阴极驱动电路和16*16点阵显示器电路。
图2.2.1
图2.2.2为各部分硬件电路的原理图
(a)时钟电路(b)复位电路
(c)点阵显示器阳极驱动电路
分别控制上八行和下八行LED显示
(d)点阵显示器阴极驱动电路
分别控制左八列和右八列LED显示
图2.2.2
三.16*16点阵LED显示器汉字显示的工作原理
16*16点阵LED显示器有两种接线形式,即共阴极接法和共阳极接法。
共阳极接法的原理图如图2.2.3(a)所示,途中只画出了4*4点阵的二极管。
每一行发光二极管的阳极接在一起,有一个引出端r,每一列发光二极管的阴极接在一起,有一个引出端c。
当给发光二极管阳极引出端r1高电平时,阴极引出端c1加低电平时,左上角的二极管点亮。
因此,对行和列的电平进行扫描控制时,可以实现显示不同汉字的目的。
(a)(b)
图2.2.316*16点阵LED显示器原理图及引脚排列
(a)16*16点阵LED原理图(b)4个8*8点阵LED引脚排列
四.点阵LED显示器与单片机的接口
16*16点阵LED显示器引脚排列如图2.2.3(b)所示。
当采用单片机进行控制时,连接16*16点阵LED显示器需要接入四片74LS273锁存器,。
在编程控制时,将16*16点阵LED显示器分成上下两部分,上半部分8行16列和下半部分8行16列。
1#、2#锁存器分别控制上八行和下八行,3#、4#锁存器分别控制左八列和右八列。
每一列由两个字节组成,数据分成两次送入扫描一列,显示一个字需要扫描16次。
“欢迎光临”显示如图2.2.4,可以按照从左到右,先下后上的顺序写出编码。
图2.2.4“欢迎光临”显示字样
图2.2.5整体电路图
软件设计
“欢迎光临”4个字的编码表如下:
TAB1:
DB00H,00H,10H,00H,34H,08H,44H,04H;
“欢”字编码数据
DB04H,03H,7CH,04H,06H,28H,38H,10H
DB0FH,0CH,89H,03H,0F8H,03H,08H,0CH
DB28H,18H,1CH,30H,08H,20H,00H,00H
TAB2:
DB00H,00H,40H,10H,40H,30H,06EH,1FH;
“迎”字编码数据
DB06CH,18H,00H,10H,00H,24H,0FEH,23H
DB02H,21H,82H,20H,0FFH,3FH,02H,21H
DB02H,23H,0FFH,21H,02H,20H,00H,00H
TAB3:
DB00H,00H,40H,00H,44H,20H,48H,20H;
“光”字编码数据
DB50H,10H,0E0H,0FH,40H,00H,0FFH,1FH
DB60H,20H,50H,20H,48H,20H,46H,20H
DB60H,20H,40H,10H,00H,00H,00H,00H
TAB4:
DB0F0H,03H,00H,40H,00H,20H,0FFH,1FH;
“临”字编码数据
DB00H,00H,00H,00H,40H,3FH,31H,21H
DB1FH,21H,14H,21H,24H,3FH,64H,21H
DB44H,21H,46H,21H,04H,3FH,00H,00H
电路的汇编语言间附件
总结
本次单片机课程设计中遇到了好多问题,比如程序编写过程中的一些不起眼的细节错误,会让整个程序在编译过程中出现问题,导致整体程序的错误;
还有绘制电路的过程中8*8LED灯组合成16*16的LED阵时引脚的串并联也是一大难题,这让我在这次设计中困难重重。
不过在老师的悉心指导下我慢慢地克服了这些困难,最终完成了这次设计,虽然实验结果并没有达到最完美,但是我从中也学到了好多东西,在书本的基础上我更加深刻的了解了AT89C51单片机的结构及引脚功能,从中体会到了一个小小的单片机竟然会有如此大的功能,小到照明灯的控制,大到家用电器的功能,51单片机都起到了很大的作用,它反映了科学技术在生活中的用处相当广泛。
这个点阵式汉字显示屏的设计以后会应用到更多的领域,与我们的生活密不可分。
在以后的学习生活中我会更加深入的去研究这些知识,从中学到更多的内容。
附录
(一)实验源程序
一.主程序
ORG0000H
MAIN:
MOVR6,#40H;
设置“欢”字显示的延时时间常数
HUANZ:
LCALLHSUB;
调“欢”字的子程序
DJNZR6,HUANZ;
判断显示延时时间到否
MOVR7,#40H;
设置“迎”字显示的延时时间常数
YINGZ:
LCALLYSUB;
调“迎”字的子程序
DJNZR7,YINGZ;
AJMPMAIN;
程序循环执行
MOVR6,#40H;
设置“光”字显示的延时时间常数
GUANG:
LCALLGSUB;
调“光”字的子程序
DJNZR6,GUANG;
设置“临”字显示的延时时间常数
LIN:
LCALLLSUB;
调“临”字的子程序
DJNZR7,LIN;
二.“欢”字显示子程序
HSUB:
MOVR5,#00H;
“欢”字显示子程序开始,显示数据计数器置初值
MOVR1,#0FEH;
前八列数据显示,选中第一列
HSUB0:
MOVDPTR,#0DFFFH;
DFFFH为3#锁存器的地址
MOVA,R1
MOVX@DPTR,A
MOVDPTR,#0EFFFH;
EFFFH为4#锁存器的地址
MOVA,#0FFH
MOVX@DPTR,A;
将第一列的点阵数据的上半部分送入LED
MOVDPTR,#TAB1
MOVA,R5
MOVCA,@A+DPTR
MOVDPTR,#7FFFH;
7FFFH为1#锁存器的地址
INCR5
MOVDPTR,#TAB1;
将第一列的点阵数据的下半部分送入LED
MOVDPTR,#0BFFFH;
BFFFH为2#锁存器的地址
LCALLDY1MS;
调延时一秒子程序
MOVA,R1;
准备选中下一列
RLA
MOVR1,A
CJNER5,#10H,HSUB0;
判断前8列显示完否,如果没有完继续显示
后八列数据显示
HSUB1:
MOVDPTR,#0EFFFH
MOVDPTR,#0DFFFH
MOVDPTR,#7FFFH
MOVDPTR,#0BFFFH
LCALLDY1MS
CJNER5,#20H,HSUB1
RET
三.“迎”字显示子程序
YSUB:
“迎”字显示子程序
MOVR1,#0FEH
YSUB0:
MOVDPTR,#0EFFFH
MOVDPTR,#TAB2
CJNER5,#10H,YSUB0
YSUB1:
MOVDPTR,#TAB2
CJNER5,#20H,YSUB1
四.“光”字显示子程序
GSUB:
“光”字显示子程序开始,显示数据计数器置初值
GSUB0:
MOVX@DPTR,A;
MOVDPTR,#TAB3
MOVDPTR,#TAB3;
MOVCA,@A+DPTR;
调延时1ms子程序
CJNER5,#10H,GSUB0;
判断前八列显示完否,如果没完继续显示
GSUB1:
MOVDPTR,#TAB3
CJNER5,#20H,GSUB1
五.“临”字显示子程序
LSUB:
MOVR5,#00H
LSUB0:
MOVDPTR,#TAB4
CJNER5,#10H,LSUB0
LSUB1:
CJNER5,#20H,LSUB1
DY1MS:
MOVR3,#0AH;
延时1ms子程序
LOOP:
MOVR4,#0FAH
DJNZR4,$
DJNZR3,LOOP
“欢”字点阵数据
“迎”字点阵数据
“光”字点阵数据
“临”字点阵数据
END;
结束
(二)材料清单
序号
符号
名称
型号
数量
单价(元)
合计(元)
备注
一、电阻所有电阻功率均为1/4W,封装形式为axial0.4
1
R
电阻
1K
2
300
16
二、电容
C
独石电容
0.1nF
三、集成电路
U
集成电路
74LS273
DIP40
四、数码显示管
T1
8*8LED数码管
五、晶体振荡器
晶体振荡器
12MHZ
六、单片机
AT89C51