基于单片机的点阵电子显示屏的设计Word文件下载.docx
《基于单片机的点阵电子显示屏的设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于单片机的点阵电子显示屏的设计Word文件下载.docx(20页珍藏版)》请在冰豆网上搜索。
[4]《8051单片机实践与应用》吴金戌沈金阳郭庭吉编清华大学出版社
[5]《电子设计竞赛赛题解析》黄正谨等编东南大学出版社
毕业设计(论文)指导教师意见书
摘要
LED大屏幕显示系统,以AT89S52单片机为核心,由键盘显示、录放音模块、光电开关、温度采集、定时闹铃、LED大屏幕显示等功能模块组成。
基于题目差不多要求,本系统对时刻显示和大屏幕显示进行了重点设计。
此外,扩展单片机外围接口、温度采集、非接触式止闹、滚动屏幕显示、语音报时等功能。
前言
单片机自20世纪70年代问世以来,以极其高的性能价格比受到人们的重视和关本文所要论述的通过单片机来操纵LED点阵显示。
LED电子显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。
它是集微电子技术、光电子技术、运算机技术、信息处理技术于一体的显示系统,是目前国际上极为先进的显示媒体。
由于它具有发光效率高、使用寿命长、组态灵活、色彩丰富、工作性能稳固以及对室内室外环境适应能力强等优点而日渐成为显示媒体中的佼佼者。
在我国改革开放之后,专门是进入90年代国民经济高速增长,对公众场合公布信息的需求日益强烈,LED显示屏的显现正好适应了这一市场形势,因而在LED显示屏的设计制造技术与应用水平上都得到了迅速的提高,生产也得到了迅速的进展,并逐步形成产业,成为光电子行业的新兴产业领域。
LED显示屏经历了从单色、双色图文显示屏,到图像显示屏的进展过程。
随着信息产业的高速进展,LED显示屏作为信息传播的一种重要手段成为现代信息化社会的一个闪亮标志。
近年LED显示屏已广泛应用于室内、外需要进行服务内容和服务宗旨宣传的公众场所如银行、营业部、车站、机场、港口、体育场馆等信息的公布,政府机关政策、政令,各类市场行情信息的发部和宣传等。
目前,关于那些需要显示的信息量不是专门大,辨论率不是专门高,又需要制造成本相对比较低的场合,使用大、小屏幕LED点阵显示器是比较经济适用的,它能够用单片机操纵实现显示字符、数字、汉字和简单图形,能够依照需要使用不同字号、字型。
屏;
1.2.2LED显示屏亮度连续可调。
1.2.3实现信息的左右滚屏显示,预存信息的定时循环显示;
1.2.4实现实时时刻的显示,显示屏数字显示:
时∶分∶秒(例如18∶38∶59);
1.2.5增大到10组(每组汉字8个或16个数字和字符)预存信息,信息具有掉电爱护;
1.2.6实现和PC机通讯,通过PC机串口直截了当对显示信息进行更新(须做PC机客户程序);
1.3创新部分
1.3.1室温的测量
1.3.2定时闹铃
1.3.3整点报时
英文字母组成的句子,通过按键切换显示内容;
1.1.5能显示4组特定汉字组成的句子,通过按键切换显示内容。
1.2发挥部分
1.2.1自制一台简易16行*64列点阵显示的LED电子显示.3.4非接触止闹
第二章方案论证
2.1显示部分
显示部分是本次设计最核心的部分,关于LED8*8点阵显示有以下两种方案:
数字时钟是本设计的重要的部分。
依照需要,可利用两种方案实现。
方案一:
本方案完全用软件实现数字时钟。
原理为:
在单片机内部储备器设三个字节分别存放时钟的时、分、秒信息。
利用定时器与软件结合实现1秒定时中断,每产生一次中断,储备器内相应的秒值加1;
若秒值达到60,则将其清零,并将相应的分字节值加1;
若分值达到60,则清零分字节,并将时字节值加1;
若时值达到24,则将时字节清零。
该方案具有硬件电路简单的特点,但当单片机不上电,程序将不执行。
且由于每次执行程序时,定时器都要重新赋初值,因此该时钟精度不高。
方案二:
本方案采纳Dallas公司的专用时钟芯片DS1302。
该芯片内部采纳石英晶体振荡器,其芯片精度不大于10ms/年,且具有完备的时钟闹钟功能,因此,可直截了当对其以用于显示或设置,使得软件编程相对简单。
为保证时钟在电网电压不足或突然掉电等突发情形下仍能正常工作,芯片内部包含锂电池。
当电网电压不足或突然掉电时,系统自动转换到内部锂电池供电系统。
而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提供正确的时刻。
基于时钟芯片的上述优点,本设计采纳方案二完成数字时钟的功能。
2.3温度采集部分
品追求多样化,多功能化,因此我们决定给系统加上温度测量显示模块,方便人们的生活,使该设计具有人性化。
采纳热敏电阻,可满足40摄氏度至90摄氏度测量范畴,但热敏电阻精度、重复性、可靠性较差,关于检测小于1摄氏度的信号是不适用的。
采纳温度传感器DS18B20。
DS18B20能够满足从-55摄氏度到+125摄氏度测量范畴,且DS18B20测量精度高,增值量为0.5摄氏度,在一秒内把温度转化成数字,测得的温度值的储备在两个八位的RAM中,单片机直截了当从中读出数据转换成十进制确实是温度,使用方便。
基于DS18b20的以上优点,我们决定选取DS18b20来测量温度。
2.4芯片的选择
采取并口输入,占用大量I/O口资源
选取串口输入,使用较少。
因此我们选用串口输入。
串口输入我们TL和CMOS器件中移位寄存器595的逻辑功能外,其最大的特点是驱动功率大,可直截了当用作LED的驱动。
综合以上比较,我们选取TPIC6B595来驱动LED点阵。
2.5闹铃方式的选择
录放音设备闹铃。
一样钟表都具有闹钟功能,到设定时刻,便自动启动闹钟,发出音乐提醒人们,再由人按下止闹按钮停止闹钟工作。
一样每天只能设置一次闹钟、并要由人按下按钮止闹,使用不是专门方便。
智能处理器应用可改变这种状况,一天可按自己需要设置闹钟的开关、多次闹钟设置并可用非接触方式止闹。
采取远程红外遥控止闹,遥控器发出特定红外信号时,单片机同意到信号,向发音设备发出停止信号止闹。
红外遥控止闹操纵距离远,然而价格昂贵,增加了制造成本。
采取光电传感器,当用一物体遮挡光电传感光电传感器向单片机接口送出一个低电平,单片机赶忙向发音设备发出停止信号止闹。
光电传感器价格廉价,线路简单,易于操纵。
基于以上比较我们决定采纳光电传感器止闹。
2
AT89S52串行口采纳的是TTL电平,因此必须的有电平转换电路,能够选择1488,
采纳单电源电平转换芯片MAX232A能够使电路变得简单,可靠。
基于以上分析,我们选用方案二,选用芯片MAX232A
2.8电源模块
方案一:
采纳干电池作为LED点阵系统的电源,由于点阵系统耗电量较大,使用干电池需经常换电池,不符合节约型社会的要求。
点阵系统要悬挂在墙上,电池总量大,使用会有较大安全隐患。
方案二:
采纳200W/5V直流稳压电源作为系统电源,不仅功率上能够满足系统需要,不需要更换电源,同时比较轻便,使用更加安全可靠
基于以上分析,我们决定采纳方案二
第三章总体方案
3.1工作原理
利用单片机AT89S52单片机作为本系统的中控模块。
单片机可把由DS18B20、DS1302读来的数据利用软件来进行处理,从而把数据传输到显示模块,实现温度、日历的显示。
点阵LED电子显示屏显示器为要紧的显示模块,把单片机传来的数据显示出来,同时能够实现滚动显示。
利用光电传感器来实现非接触止闹功能。
在显示电路中,要紧靠按键来实现各种显示要求的选择与切换。
3.2总体设计
设计总体框图如图1
第
4.1AT89S52单片机最小系统
最小系统包括晶体振荡电路、复位开关和电源部分。
图2为AT89S52单片机的最小系统。
4.2温度测量模块
温度测量传感器采纳DALLAS公司DS18B20的单总线数字化温度传感器,测温范畴为-55℃~125℃,可编程为9位~12位A/D转换精度,测温辨论率达到0.0625℃,采纳寄生电源工作方式,CPU只需一根口线便能与DS18B20通信,占用CPU口线少,可节约大量引线和逻辑电路。
接口电路如图3所示。
图3DS18B20测量电路
4.3时钟模块
时钟模块采纳DS1302芯片,DS1302是DALLAS公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和31字节静态RAM通过简单的串行接口与单片机进行通信实时时钟/日历电路提供秒分时日日期月年的信息每月的天数和闰年的天数可自
图4时钟电路
4.4键盘模块
键盘、状态显示模块:
为了使软件编程简单,本设计利用可编程芯片8255。
接法如表1所示。
PA口接按键,PC口则用于操纵状态显示所用LED点阵。
每个按键都通过一个10K的上拉电阻接电源+Vcc,按键的另一端接地。
当有键按下时,与该键相连的PA口的相应位变为低电平,单片机检测到该变化后即转到相应的键处理程序,同时在程序中点亮LED点阵。
模块电路如图5
4.5LED显示模块
点阵数据串行输入,器件为移位寄存器TPIC6B595595,门控和扫描信号常以16点阵为一行进行并行处理。
在点阵显示中以4×
8个LED点阵构成一个LED显示单元,采纳行共阳列共阴的编排方式。
其驱动分为行列两部分,分别来自于行、列移位寄存器,行数据是扫描数据,16行中每次只有一行被驱动,采纳逐行扫描方式,列数据则为汉字的点阵码。
。
关于字符和图形显示也能够用点阵处理,其显示原理和方法相同.电路如图6
图6LED显示电路
4.6电源选择
200W/5V的直流稳压电源更加安全电路图如图7
图7电源电路
4.7PC机通讯
MAX232是标准的串口通信接口,关于一样的双向通讯,只需要使用串行输入口RXD(第3脚)、串行输出TXD(第2脚)和地线(第7脚)。
MAX232
图8串口通讯
4.8整体电路
系统整体电路如下:
图9整体电路
第五章系统软件设计
5.1主程序
5.2显示子程序流程
5.3显示时刻子程序流程
图12时刻子程序流程图
5.4与PC串口通讯程序
5.5LED亮度调剂
图14LED亮度调剂
5.6温度测量流程图
图15温度测量程序流程图
第六章测量及其结果分析
6.1差不多部分测试与分析
6.11测试仪器:
秒表、温度表、万用电表、WAVE仿真器
6.12差不多要求部分的测试与分析:
(1)系统上电后,全屏点亮,没有暗点。
接着显示时刻。
按“#”键后时扫描键盘,当有1~10键按下时,分别显示十段设定的数字、英文或汉字。
(2)显示时刻时通过与秒表对比,测试的系统时刻准确。
6.2发挥部分测试与分析
(1)当按下#后在按下进入亮度调剂,按下“+”键时,亮度增加。
按下“—”键时,亮度变弱。
(2)能够实现文字左右移动
(3)按下“设置时刻”键,观看到“钟表”二极管点亮,现在可对时刻进行设置。
按下“时刻设置“进入时调试,按“+”键时刻加。
在按下“切换”键时,进入分调整模式,按下“+”键,分增加。
按下“选择”键时,分调整模式改为秒调整模式,按下“+”键秒增加。
经测试该步能够专门好的实现。
调整时刻完毕后,再按一下“闹钟设置”进入闹铃设置状态,按下“+”键设定“时”增加,在按下“选择”键进入分的设置,按下“+”键设定“分”增加。
在按下“选择”键进入秒设置模式,按“+”键秒增加。
(4)系统能够显示10组,每组8个汉字,完成要求
6.3创新部分测试与分析
(1)温度测量:
键盘切换现场环境温度显示:
按“功能”键选择“温度”,将温度传感器和温度计放入不同的测试环境中进行测试,结果如表1所示。
表1与标准温度计测量值比较表
温度计示值(摄氏度)
10.3
25.2
49.7
70.1
85.5
温度输出(摄氏度)
10
25
50
70
86
由测试知,数字钟的输出与温度计值差不多上相等,误差不大于0.5度。
(2)当到设定时刻时,开始访一段音乐,完成定时闹铃功能。
(3)当用手遮挡光电传感器后,停止放音。
手拿开后,不再放音,直到到设定时刻。
完成非接触止闹功能
设计总结
从拿到试题,我们就开始预备关于本次课题的材料,每天畅游在图书馆中,从差不多方案的制定,在到硬件电路的选择,到制作电路制作,最后进行程序调试。
在此期间我们遇到专门多困难,几乎没有说过一次好觉,尽管专门困难,然而我们各自分工,相互协作,一次又一次品尝到了解决问题的欢乐,最终完成了要求的全部功能,并加入了一些创新的部分。
在此,我要衷心的感谢张胜云老师和我的同学们,假如没有他们,我将可不能这么快就做出这次的毕业设计。
此外,在设计中我发觉了自己知识的不足,从这次设计中我学到了专门多东西,最重要的是我学会了一种精神————永不舍弃。
在以后的时刻里面我们会用这种精神去学习,更上一层楼。
谢辞
当我以学子的身份踏入大学校门的那天起,便已注定我将在那个地点度过人一辈子中最漂亮的青春年华。
提笔写下“谢辞”,我才惊觉自己立即真正离开,人一辈子亦从此展开新的画卷。
尽管不舍,却更珍爱,因为我的生命中有那么多可爱的人值得感激。
他们使我的大学生活充满了色彩,不管收成、遗憾,对我来说差不多上一笔宝贵的财宝。
三年的大学生活不知不觉中就要终止了,在这段难忘的生活中,有我许多美好的回忆。
在这份大学的最后一页里,第一感谢学院给我们提供那个能自我展现的平台,感谢我们的指导老师,高健老师.你们从一开始的论文方向的选定,到最后的整篇文论的完成,都专门耐心的对我进行指导。
给我提供了大量数据资料和建议,告诉我应该注意的细节问题。
感谢我们班主任老师,从大一到大二是你的尽心教诲、孜孜不倦我们才能顺利的完成学业。
我要感谢在我二年的学习中无私传授我知识的各位老师,是你们将自己宝贵的财宝无私地奉献给了我们,让我们能在学业上有所成绩;
是你们让我倍感教师职业的伟大,交给我们知识,又不忘教育我们如何做人!
在此,我还要感谢寝室的兄弟们在我完成论文的过程中给予我的关心和鼓舞,也是他们陪我度过这三年的生活。
最后,再次对关怀、关心我的老师和同学表示衷心地感谢!
祝你们永久幸福欢乐!
参考资料
[1]《基于单片机结构的智能系统设计与实现》沈红卫编电子工业出版社
[2]《单片机原理与接口技术》黄惠媛编海洋出版社
[3]《单片机应用技术》周平伍云辉编电子科技大学出版社
[5]《电子设计竞赛赛题解析》黄正谨等编东南大学出版社
附录
例:
整屏四个字一起显示的程序
SEREQUP1.0;
TPIC6B595第3脚
OEEQUP1.1;
TPIC6B595第8脚
RCKEQUP1.2;
TPIC6B595第12脚
MREQUP1.3;
TPIC6B595第9脚
SRCLKEQUP1.4;
TPIC6B595第13脚
ORG0000H
LJMPMAIN
ORG0100H
;
**************************主程序**********************************
MAIN:
MOVSP,#70H
SETBOE
MOV2BH,#00H
MOV27H,#00H
START:
;
初始化寄存器RAM单元
MOVR0,#30H
MOVR1,#64H;
30H~6FH单元清零
MOVA,#00H
ST:
MOV@R0,A
INCR0
DJNZR1,ST
2Dh------寻址偏址;
整屏四个字一起显示
LOOP:
MOVDPTR,#TAB;
赋查表初值
MOVR3,#56
PLAY:
MOV2DH,#00H
MOV2FH,#10H
GG:
LCALLLINE16;
扫描显示一次
MOV2DH,#00H
DJNZ2FH,GG
MOVA,DPL
CLRC
ADDA,#16
MOVDPL,A
MOVA,DPH
ADDCA,#00H
MOVDPH,A
DJNZR3,PLAY
SJMPSTART
LINE16:
MOV2BH,#16;
扫16行,2BH放后还剩几行
FF:
LCALLLINE1;
扫描显示一行子程序
DJNZ2BH,FF;
扫描行直到16行扫完再转
RET
LINE1:
LCALLMSTR;
将显示的内容移入内存单元
LCALLSEND;
发送串口子程序
LCALLXH;
选通行子程序
RET
MSTR:
显示内容移入内存单元
MOVR0,#30H
MOVR4,#9
MOVA,2DH;
BB:
MOVCA,@A+DPTR
MOV@R0,A
MOVA,2DH
ADDA,#16;
加16移到下一行
MOV2DH,A
DJNZR4,BB
SUBBA,#143
$$$$$$$$$$$$$$$$$$$$$$$$$$$发送数据到串口子程序$$$$$$$$$$$$$$$$$$$$$$$$$
SEND:
MOVR0,#30H
MOVR5,#8;
一行有8个字节,如每次显示字数不同要作相应改动
SETBOE
SETBMR
MOVSER,C
SETBSRCLK;
触发串行CP端
DJNZR2,DD1;
每个字节移8次够了向下执行
XH:
CLRRCK;
将输出CP变成低电平为上升沿做预备
NOP
SETBRCK
CLRP1.6
CLRP1.7
MOVA,27H
SWAPA
MOV27H,A
CLRMR
SETBMR
DE25MS:
MOVR5,#09H
DEL2:
MOVR6,#0FH
DEL3:
MOVR7,#01H
DJNZR7,$
DJNZR6,DEL3
四、学生毕业设计(论文)成绩评定