基于AT89S52的LED点阵显示屏.docx
《基于AT89S52的LED点阵显示屏.docx》由会员分享,可在线阅读,更多相关《基于AT89S52的LED点阵显示屏.docx(17页珍藏版)》请在冰点文库上搜索。
基于AT89S52的LED点阵显示屏
摘要:
LED大屏幕显示系统,以AT89S52单片机为核心,由键盘显示、温度采集、串口通信、LED大屏幕显示等功能模块组成。
本系统的灰阶控制功能由软件来实现,吸收了硬件软件化的思想,本系统不仅可以实现题目要求的基本功能,同时发挥部分也得到完全的实现,最主要的是LED显示屏的内容可以通过PC机进行实时修改,而且有一定的创新功能。
关键字:
单片机LED大屏幕滚屏显示PC机控制
Forpersonaluseonlyinstudyandresearch;notforcommercialuse
Forpersonaluseonlyinstudyandresearch;notforcommercialuse
Summary:
LEDlargescreendisplaysystem,AT89S52microcontrollerasthecore,thekeyboardanddisplay,thetemperatureacquisition,serialcommunication,LEDlargescreendisplayfunctionmodule.Gray-scalecontrolofthesystemfunctionsimplementedbysoftware,hardwareandsoftwareoftheabsorptionoftheidea,thissystemcanachievetherequirementsofthesubjectnotonlytothebasicfunction,butalsoplayaparttobefullyrealized,themostimportantistheLEDdisplaycontentscanbemodifiedinrealtimeviaaPC,butalsohassomeinnovativefeatures.
Keywords:
SCMscrollingLEDlargescreendisplayPCcontrol...
1.设计任务
1.1任务
设计并制作一台简易LED电子显示屏,16行*16列*16灰阶点阵显示,
原理示意图如下:
PC机
LED灰阶电子显示屏原理框图
1.2要求:
设计并制作LED电子显示屏和控制器。
1)自制一台简易16行*16列*16灰阶点阵显示的LED电子显示屏;
2)自制显示屏控制器,扩展键盘和相应的接口实现多功能显示控制,显示屏显示16灰阶图像(可以是渐变灰阶条纹)、数字和字母亮度适中,应无闪烁。
3)显示屏通过按键切换显示图像、数字和字母;
4)显示屏能显示3组特定图像、数字或者英文字母组成的句子,通过按键切换显示内容;
5)能显示2组特定汉字组成的句子,通过按键切换显示内容。
1.3说明
(1)显示格式和显示信息可以自定义。
(2)电子显示屏LED显示灯只允许使用8*8LED点阵显示模块。
(3)显示屏的显示控制方案和控制器的选择方案任选。
(4)不允许使用LED集成驱动模块和集成灰阶产生模块,可用CPLD或FPGA。
2、方案
2.1显示部分:
显示部分是本次设计最核心的部分,我们运用动态显示,对一幅画面进行分割,对组成画面的各部分分别显示,是动态显示方式。
动态显示方式方式,可以避免静态显示的问题。
但设计上如果处理不当,易造成亮度低,闪烁问题。
因此合理的设计既应保证驱动电路易实现,又要保证图像稳定,无闪烁。
动态显示采用多路复用技术的动态扫描显示方式,复用的程度不是无限增加的,因为利用动态扫描显示使我们看到一幅稳定画面的实质是利用了人眼的暂留效应和发光二极管发光时间的长短,发光的亮度等因素.我们通过实验发现,当扫描刷新频率(发光二极管的停闪频率)为50Hz,发光二极管导通时间≥1ms时,显示亮度较好,无闪烁感.。
2.2.数字时钟
本方案采用Dallas公司的专用时钟芯片DS1302。
该芯片内部采用石英晶体振荡器,其芯片精度不大于10ms/年,且具有完备的时钟闹钟功能,因此,可直接对其以用于显示或设置,使得软件编程相对简单。
为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工作,芯片内部包含锂电池。
当电网电压不足或突然掉电时,系统自动转换到内部锂电池供电系统。
而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提供正确的时间。
2.3温度采集部分
能进行温度测量是本设计的创新部分,由于现在用品追求多样化,多功能化,所以我们决定给系统加上温度测量显示模块,方便人们的生活,使该设计具有人性化。
采用温度传感器DS18B20。
DS18B20可以满足从-55摄氏度到+125摄氏度测量范围,且DS18B20测量精度高,增值量为0.5摄氏度,在一秒内把温度转化成数字,测得的温度值的存储在两个八位的RAM中,单片机直接从中读出数据转换成十进制就是温度,使用方便。
基于DS18b20的以上优点,我们决定选取DS18b20来测量温度。
2.4显示接口芯片的选择
选取串口输入,使用较少。
所以我们选用串口输入。
串口输入我们可以选用TI公司的DMOS器件TPIC6B595,除具有TTL和CMOS器件中移位寄存器595的逻辑功能外,其最大的特点是驱动功率大,可直接用作LED的驱动。
2.5串口通讯芯片的选择
AT89S52串行口采用的是TTL电平,因此必须的有电平转换电路,可以选择单电源电平转换芯片MAX232A可以使电路变得简单,可靠。
2.6电源模块
采用200W/5V直流稳压电源作为系统电源,不仅功率上可以满足系统需要,不需要更换电源,并且比较轻便,使用更加安全可靠
3、总体方案
3.1工作原理:
利用单片机AT89S52单片机作为本系统的中控模块。
单片机可把由DS18B20、DS1302读来的数据利用软件来进行处理,从而把数据传输到显示模块,实现温度、日历的显示。
点阵LED电子显示屏显示器为主要的显示模块,把单片机传来的数据显示出来,并且可以实现滚动显示。
在显示电路中,主要靠按键来实现各种显示要求的选择与切换。
3.2总体设计:
设计总体框图如图1
4、系统硬件设计
4.1AT89S52单片机最小系统
最小系统包括晶体振荡电路、复位开关和电源部分。
图2为AT89S52单片机的最小系统。
图2
4.2温度测量模块
图3DS18B20测量电路
温度测量传感器采用DALLAS公司DS18B20的单总线数字化温度传感器,测温范围为-55℃~125℃,可编程为9位~12位A/D转换精度,测温分辨率达到0.0625℃,采用寄生电源工作方式,CPU只需一根口线便能与DS18B20通信,占用CPU口线少,可节省大量引线和逻辑电路。
接口电路如图3所示。
4.3时钟模块
时钟模块采用DS1302芯片,DS1302是DALLAS公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和31字节静态RAM通过简单的串行接口与单片机进行通信实时时钟/日历电路提供秒分时日日期月年的信息每月的天数和闰年的天数可自动调整时钟操作可通过AM/PM指示决定采用24或12小时格式DS1302与单片机之间能简单地采用同步串行的方式进行通信仅需用到三个口线1RES复位2I/O数据线3SCLK串行时钟时钟/RAM的读/写数据以一个字节或多达31个字节的字符组方式通信DS1302工作时功耗很低保持数据和时钟信息时功率小于1mW,其接线电路如图4
图4时钟电路
4.4键盘模块
键盘、状态显示模块:
为了使软件编程简单,本设计利用可编程芯片8255。
接法如表1所示。
PA口接按键,PC口则用于控制状态显示所用LED点阵。
每个按键都通过一个10K的上拉电阻接电源+Vcc,按键的另一端接地。
当有键按下时,与该键相连的PA口的相应位变为低电平,单片机检测到该变化后即转到相应的键处理程序,同时在程序中点亮LED点阵。
模块电路如图5
4.5LED显示模块
点阵数据串行输入,器件为移位寄存器TPIC6B595,门控和扫描信号常以16点阵为一行进行并行处理。
在点阵显示中以4×8个LED点阵构成一个LED显示单元,采用行共阳列共阴的编排方式。
其驱动分为行列两部分,分别来自于行、列移位寄存器,行数据是扫描数据,16行中每次只有一行被驱动,采用逐行扫描方式,列数据则为汉字的点阵码。
。
对于字符和图形显示也可以用点阵处理,其显示原理和方法相同.电路如图6
图6LED显示电路
4.6灰阶控制
●256阶灰度控制方法
对于LED发光灯,灰度控制方法主要有驱动电流控制法和驱动脉冲占空比控制法。
占空比控制法是在一定的显示重复扫描频率下,LED器件的亮度可由发光时间Tu与扫描周期T的比Tu/T进行控制。
在相同的LED正向电流作用下,Tu越长发光能量越大,只要周期性扫描的速度足够快的话,人眼发觉不了1个周期内不发光的部分,只是感觉LED的亮度更高。
本设计采用占空比控制法。
●图像扫描方法
在图像扫描显示过程中,每次传输和显示的只是带有8bit灰度级的某一列数据的1bit,这样传输并显示8次,就可以反映出8bit的灰度级。
具体方法为:
首先扫描显示16行各列8bit灰度值的D0比特,其次扫描显示16行各列的D1比特,依此类推,直到显示16行各列灰度值的D7bit。
各部分按顺序重复上述过程,直到整屏扫描显示完,对于16行各列1bit的扫描细节过程为:
从第一行开始,首先送这一行各列D0位灰度值数据到各列移位寄存器锁存器,然后,送第2行各列的D0位数据,同时显示第1行数据。
依次类推,直到显示第16行各列的D0位数据,同时开始第1行的D1位数据。
重复8次扫描显示16行。
每比特扫描时间如下图2所示,整个扫描过程可以如图3所示。
方案一、通过FPGA来实现灰阶控制,是在FPGA设计工具中利用译码器产生一系列OE脉宽的具体电路图。
E2…E10来自计数器;H1,H2,H4,H8,H16,H32,H64,H128,H256为译码器译出的不同脉宽的OE信号源。
H1为一个时钟周期,H2为半个时钟周期,以此类推,H256为1/256个时钟周期[2]。
这一系列脉冲需要进入数据选择器进行分时输出,最终输出的只有OE一条线。
表1是OE脉冲分配表。
因为H1最宽,H1输出时LED最亮,所以在这里不是将H1连续输出,而是分散开,其目的是提高显示屏的扫描频率,降低频闪,使屏幕图像看上去更加稳定。
方案二、通过单片机软件扫描来实现LED不同灰阶的现实,从而达到显示图像的效果。
由于缺少FPGA的开发工具,所以采用方案二。
4.7亮度连续可调控制
通过调节电位器来改变电压,实现亮度的调节。
调节电位器实现线形电压调整,从而控制三极管使显示屏压降发生改变。
从而达到连续调节亮度的目的。
电位器的调节范围较大,因此用此方法来调节。
4.8电源选择
200W/5V的直流稳压电源更加安全,电路图如图7
图7电源电路
4.9PC机通讯
●硬件连接设计
MAX232是标准的串口通信接口,对于一般的双向通讯,只需要使用串行输入口RXD(第3脚)、串行输出TXD(第2脚)和地线(第7脚)。
MAX232逻辑电平的规定如表2.
图8串口通讯
●软件设计
通过VC++在PC机上编写一个上位机软件实现对单片机的控制,实现LED显示内容和现实方式的控制。
4.10整体电路
系统整体电路如下:
图9整体电路
5、系统软件设计
5.1主程序
图10
5.2显示子程序流程
5.3显示时间子程序流程
5.4与PC串口通讯程序
5.5温度测量流程图
结束语
在大学三年的学习中,使我积累了很多数字通信方面的知识,为了对我这三年所学的知识有一个更好的了解和巩固,特此,我选择该题目作为我的毕业设计题目。
单片机是数字通信的必然产物,因为其用途的方向不停的增多,我愿毕业以后我将继续从事此行业,去努力学习,完善自己,为通信行业做出我卑微的贡献。
参考文献
1金龙国,《单片机原理与应用》,中国水利水电出版社;
2编,《单片机技术实验实训教程》,中国水利水电出版社
3李全利,《单片机原理与接口技术》,高等教育出版社;
4劲松、武陪秀,《点阵液晶显示汉字程序设计》,电测与仪表;
5代启化,《基于Proteus的电路设计与仿真仿真》,自动化技术;
致谢:
在此,谨向张武勤导师致以最衷心的感谢和诚挚的敬意!
同时也感谢电子信息工程工程技术专业张武勤老师对我耐心的指导,同时感谢电子班全体同学,有了大家的支持和帮助才使得论文研究工作得以顺利的完成。
仅供个人用于学习、研究;不得用于商业用途。
Forpersonaluseonlyinstudyandresearch;notforcommercialuse.
NurfürdenpersönlichenfürStudien,Forschung,zukommerziellenZweckenverwendetwerden.
Pourl'étudeetlarechercheuniquementàdesfinspersonnelles;pasàdesfinscommerciales.
толькодлялюдей,которыеиспользуютсядляобучения,исследованийинедолжныиспользоватьсявкоммерческихцелях.
以下无正文