基于单片机的光立方设计_第1页
基于单片机的光立方设计_第2页
基于单片机的光立方设计_第3页
基于单片机的光立方设计_第4页
基于单片机的光立方设计_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

结 课 论 文 题 目:基于单片机的光立方设计学 院:专 业:班 级:姓 名:学 号:指导教师:2017年12月16日基于单片机的光立方设计【摘要】本设计制作了一个4*4*4的LED光立方,这个作品不仅能够显示静态的画面,还能够通过延时程序的控制产生立体动态的效果,可以广泛的运用在媒体的信息传递,而且具有很好的装饰效果,是未来媒体传播的一个发展趋势,具有很好的发展前景。在此次设计光立方核心控制器选择的是单片机STC12C5A60S2,选择74LS573锁存器扩展I/O口,完成硬件电路设计。显示采用的是扫描显示方式,根据相应的数据表分别选通所需要的片选列信号,然后再根据送到P0口的列数据给到74HC573进行锁存。单片机通过控制P1口的输出状态,来驱动ULN2803,从而控制每一层的选通状态。在软件设计的过程中,运用模块化的思想,分块设计,相对独立的模块,增强了系统的可塑性。【关键词】单片机 74LS573锁存器LED目 录1.引言11.1目前世界LED显示屏的发展概况11.2 我国LED显示屏研究现状11.3 设计的总体要求及方案选择11.4 毕业论文的总体结构安排22 系统总体方案设计22.1 系统硬件方案的选择22.1.1 光立方的核心控制器22.1.2 I/O口扩展芯片22.1.3层控制驱动电路22.1.4 LED发光二极管32.1.5硬件电路绘图软件32.2 系统总体软件方案选择32.2.1 单片机编程语言33 系统硬件方案设计33.1 硬件整体设计的概述33.2 电源供电系统设计43.3 51单片机的最小系统43.4 驱动电路设计53.5 光立方的制作及工作原理介绍63.5.1 3D LED光立方搭接63.5.2 光立方工作原理64 系统软件方案设计74.1 概述74.2 主程序设计75 光立方PCB版制作86 系统测试96.1 硬件系统测试96.2 软件系统测试96.3 系统总体测试10结论11参考文献12附录13III1.引言1.1目前世界LED显示屏的发展概况随着科技不断的发展,社会的信息化已经到达了不可阻挡的态势,大规模的LED显示屏的应用已经从公共信息传播的商业应用不断的向消费类型过度。同时,网络科技的高速发展使得未来的信息世界的主流将由数字化的多媒体占为主导地位,新型的LED大屏显示将取代传统的信息传递方式。也正是因为在未来的社会中对于LED大屏显示的巨大需求,使得LED显示屏的技术受到了人们的热切关注。据了解目前世界上的LED显示屏大体上可以分为静态图文显示屏和视频显示屏,而且都是有一块一块的LED矩阵块拼接而成的。动态图文显示屏可与计算机连接同步的显示显示计算机上显示的信息;视频显示屏则通过采用微型计算机控制,实现视频信息的显示,还可显示二维甚至三维的视频信息。这种技术不仅可以用于室内的装饰还可以用于室信息传播,其优点是其他多媒体工具所不能比拟的。而且显示画面色彩鲜艳,立体感强,广泛应用于各种公共场所中。随着社会经济以及科技的的不断发展,人们对LED显示器的探索不多深入,使其的用途也变的越来越广。1.2 我国LED显示屏研究现状我国LED显示屏产业的技术基础和水平相对来说是比较先进的,主要产品和核心技术与国际水平基本能够保持一致,然而工艺水平却相对落后,需要在科技不断进步的基础上,不断地提高我国的工艺水平,使其能够完全达到国际水平,甚至超过国际水平。1.3 设计的总体要求及方案选择本设计制作的是一个4*4*4的3D的LED立方体,是通过将编写好的程序下载到单片机中,然后单片机驱动UNL2803和74HC573两种芯片,来控制每一个LED的亮和灭,从而达到显示各种图案的效果。同样为了达到更为更好的显示效果,可以在编程的过程中,设计不同的模块,其中最简单的模式是静态图案。然后还有比较复杂的动态显示模式。单片机具有控制LED点阵显示的原理,然后根据设计要求,设计出相应的模块,及其连接方式,完成硬件方案设计。接着,通过软件程序的编写,实现对硬件电路的控制,实现所预计的显示功能,期间需要对程序不断的测试,直到程序正确无误。电路系统焊接完成后,测试整个系统的各项功能是否能够实现,如有虚焊的地方重新进行加焊,完成整个系统的功能。1.4 毕业论文的总体结构安排(1) 初步总体方案的论证和选择在图书馆以及网络上搜集设计相关的资料,选择几套能够完成设计的方案。通过各方面的比较,最终确定,光立方的核心控制器为8位的单片机,外加I/O扩展口和层驱动电路,从而实现对光立方显示的控制。(2) 方案实现通过各种性能对比,最终选定STC12C5A60S2单片机为核心控制器件,74HC573扩展I/O口输出。(3) 软件编写为满足设计要求以及考虑到自己的能力等各方面的因素,最终软件部分选用C语言编写。程序编写的过程中,设计了静态显示和动态显示两种相对独立的模块。(4) 验证与测试测试部分由硬件测试、软件测试和系统总体测试三部分组成。在硬件测试中发现LED间虚焊导致显示异常,以及个别LED灯在焊接的时候因为温度过高而遭到损坏,然后将之更换。在软件测试中出现程序编写错误,仔细阅读程序,进行编译找出错误的所在,进行重新改写。2 系统总体方案设计通过各方面的性能与性实际情况的对比确定设计中所用的芯片与各类器件。2.1 系统硬件方案的选择2.1.1 光立方的核心控制器控制部分是整个系统的核心部分。因为单片机具有丰富的指令类型,接口性能很强,运行速度很快,被广泛应用于工业控制,通讯设备,家用电器,智能仪表等。同时,单片机具有低能耗低电压的特点。而应用最广泛的单片机便是Intel的51系列。但是光立方的LED灯数量较大,所以在设计的时候选择增强型的51系列单片机STC12C5A60S2作为其核心控制器。2.1.2 I/O口扩展芯片在I/O的选择中,考虑到LED的亮灭信息需要暂存的芯片上然后使得LED更好的实现光立方的显示效果,所以列线驱动I/O口扩展芯片选择的是74HC573。2.1.3层控制驱动电路光立方是由512个LED组成,层面的电流较大,所以需要把电流放大才能驱动整个立方体。方案一:用ULN2803作为光立方层驱动电路,因为ULN2803具有保护二极管共阴极的作用更好的保护光立方的工作。方案二:而5V的固体继电器对于焊接时的温度要求高,且导通后管压降较大。基于以上分析,选择ULN2803作为层面控制器。2.1.4 LED发光二极管在选择光立方的LED灯时,通过考虑制作成本和对于LED驱动的要求,以及显示效果等各方面的因素,最终确定选择了单色的蓝色3mmLED雾灯。2.1.5硬件电路绘图软件本节选择绘图软件,将整个系统的电路图通过软件画出来,完成PCB板的版图的绘制。PROTEL是一款比较全面的画图软件,它能实现了单片机仿真和SPICE电路仿真相结合,而且能够提供提供软件测试功能,这些功能是设计过程中对于硬件电路绘制不可或缺的,所以在本次设计决定选取PROTEL99S作为电路原理图和PCB版图绘制软件。2.2 系统总体软件方案选择系统的软件设计是整个设计控制最重要的部分,也是最难的一个部分,对设计者程序编写的能力具有很高的要求,不但要满足设计中预计实现的功能,还要考虑自己的能力,要在自己的能力范围内,做出最好软件设计。程序在编辑软件中写出,通过编译软件,编译完成后烧录进我们所选择的单片机中,实现对硬件电路的控制。2.2.1 单片机编程语言在选择编程语言的时候,考虑到汇编语言的冗长单调,而且调试困难,选择了C语言,因为C语言具有良好的移植性,而且程序结构清晰,容易读懂。3 系统硬件方案设计3.1 硬件整体设计的概述光立方系统结构总体框图如图1所示。整体的电路大体上是由核心控制电路、显示驱动电路两部分。 在这个光立方中512个LED灯,相当于4个4*4的点阵,通过八根引线将ULN2803与每个点阵连接起来,实现对光立方层面的控制。对于列的驱动,是通过利用74HC573锁存器暂存的功能,将一个列面上的灯的亮灭信息暂存到芯片上,然后输出到灯上,从而实现了单片机STC12C5A60S2对512个LED灯的控制。图1系统结构设计总图3.2 电源供电系统设计由于单片机属于数字电路中的元件,所以在设计电路是,为了简洁方便,直接由一个USB口向电路输入+5V的直流电源。3.3 51单片机的最小系统单片机最小系统是由时钟电路和复位电路组成的。时钟电路为设计中的单片机产生时钟信号,使得单片机按照时钟信号的控制进行工作。复位电路的作用是使得单片机初始化。单片机最小系统电路图见图2。(1)时钟电路设计时钟电路中包含两个电容,一个晶振以及一个时钟芯片。时钟电路见图3。图2 单片机最小系统电路图 图3 时钟电路图 (2)复位电路设计STC12C5A60S2单片机在启动运行时或者出现死机时需要通过复位电路使得CPU以及其他的功能部件进行初始化。电路搭建图见图4。本次设计中,在正电源VCC和单片机的RST端之间加了一个按键。当按键按下的时候,VCC会直接给单片机的RST端加上+5V的电平,这样便实现了单片机的复位。图4按键电平复位电路图 3.4 驱动电路设计(1)层驱动电路设计在本次设计中选择了ULN2803芯片作为层驱动,每一层通过共阴极的连接方式分别与ULN2803的八个引脚连接,通过ULN2803控制每一层LED灯的亮灭。(2)列驱动电路设计这本次设计中,对于光立方列的控制选择了74HC573芯片作为列线驱动IO口扩展芯片,在74HC573的引脚中,D0-D7为输入口,Q0-Q7为输出口,将焊好的每一个个8*8的LED面的阴极插入PCE板上的插针中,与74HC573的八个输出引脚相连,实现对了对光立方列的驱动。74HC573引脚排布图见图5。 图5 74HC573引脚排布图 输入输出输出使能锁存使能数据LHHHLHLLLL不变HZ表1 74HC573的逻辑功能表注:H=高电平 L=低电平 x=不确定 Z=高阻态3.5 光立方的制作及工作原理介绍3.5.1 3D LED光立方搭接 (1) LED元件选型本设计中为了实现更好的显示效果,最终选择了长脚的雾状蓝光的LED灯。(2) LED亮灭测试 因为LED灯的数量较大,不能避免的含有坏灯,所以在进行焊接之前,必须要用万用表进行测试,以保证光立方是的显示效果。3.5.2 光立方工作原理这本设计中利用单片机能够实现对LED的点阵控制显示的原理,实现了对光立方显示的控制。通过将编写程序烧录进单片机中,然后控制每一个LED灯的亮灭,从而显示相应的图案。在本次设计中,单片机驱动4个74HC573,然后4个74HC573驱动每一层的16个灯的亮灭,也就是这个光立方在同一时间只能有一个层面处在全亮的状态,但是我们知道人眼视觉暂留是24帧/秒,只要LED灯闪的足够快,先点亮第一层,然后第二层,第三层以此类推,我们就会看到一幅完整的画面。采用动态扫描的方式,根据相应的数据表分别选通所需要的片选列信号,然后再根据送到P0口的列数据给到74HC573进行锁存。单片机通过控制P1口的输出状态,来驱动ULN2803,从而控制每一层的选通状态。选通状态根据相应的数据表来由低位向高位输出,来分别点亮每一层。4 系统软件方案设计4.1 概述软件设计包括主程序、显示程序两大部分,在按下开关后,主程序便开始顺序的调用显示程序送到控制端口。4.2 主程序设计系统软件部分是根据模块化的思想运用C语言进行编写。最终使得程序能够实现静态显示,动态显示两种显示功能。主程序的工作流程见图10。 图10 主程序流程图程序开始时首先对单片机进行包括定时器的初始化、中断初始化、I/O口工作方式的设定,以及中断优先级的设定等内容的初始化初始化。接着编写各个相对独立的子程序段,进行编译修改直到没有错误,最后将所有的子程序整合到一起,组成完整的程序,再下载到单片机中。4.3 显示程序的设计显示采用的是扫描显示方式,根据相应的数据表分别选通所需要的片选列信号,然后再根据送到P0口的列数据给到74HC573进行锁存。单片机通过控制P1口的输出状态,来驱动ULN2803,从而控制每一层的选通状态。程序整体流程如图11所示。显示程序中显示图案的设计需要用到取模软件,根据立方里显示的图案在在正视 侧视 俯视三个视角分别显示的图案,在取模软件上用鼠标画出想要显示的图案,从而自动生成相应的数组,然后将这些数组复制到相应的程序段中,从而通过程序的控制使得光立方显示相应的图案。例如在正视的时候在立方体的中间显示数字“0”,如图12所示。5 光立方PCB版制作由于此次设计中线路异常复杂,如果采用万用板进行焊接的话,电路焊接的时候需要大量的跳线,为了提高设计的成功率,我采用的是在PROTEL99设计好电路原理图,制作PCB板,但由于没有印制PCB板的设备,所以将设计好的电路图,在网上制作了自己的PCB板,这样大大减小焊接的工作量,也提高了设计的成功率。PCB电路如图13所示。图13 PCB电路图6 系统测试系统的测试包括硬件测试,和软件测试,而且系统测试在整个设计中也占有非常重要的地位,只有经过整体提的系统测试,确认各项功能够全部实现,设计的工作才算正式完成。6.1 硬件系统测试对于硬件测试过程中,电路板器件之间不存在短路的情况,因为前面以经提到,为了保证焊接的更加成功,选择采用的是PCB板,各个期间之间距离安排的还算合理,无论是在焊接过程中,还是后期测试中,都占有很大的优势。另外,用万用表测试了各个器件发现都能正常使用。硬件测试中工作量最大的便是对LED灯的检测,因为光立方的中有512个LED灯,而且二极管在焊接的时候温度不要过高,所以在焊接的过程中,很容易因为温度过高对二极管造成损坏,所以在测试中需要测试每一个LED灯能否正常工作,如果不亮则需要更换,而且在测试过程中,发现了存在几个虚焊开焊的地方,造成灯不亮,然后经过加焊,使得512个LED灯全部能够正常工作。6.2 软件系统测试软件测试中测试单片机是否正常工作,用万用表测量单片机时钟引脚(18、19脚)的对地电压。在这个设计中,程序比较复杂 ,在测试的过程中,是按照每个模块逐个测试,出现问题的一步一步的修改。在测试过程中,通过修改延时的修改,改善了LED灯闪动的问题,使得光立方的是显示效果更佳。6.3 系统总体测试在完成整个光立方的设计工作时,进行通电测试显示效果时,发现光立方中所显示的图案与预期设计的图案的方向是相反的,经过分析,发现与ULN2803相连接的8跟引线的方向接反了,于是又重新焊接。完成焊接后再次进行显示测试的时候达到了预期的效果。结论毕业设计是完成大学学业的最后一项重要的工作,也是对所学知识的考察,以及动手能力的考验,为以后的工作打下了一定的基础,设计即将完成,在这里做一下最后的总结。本设计选择是光立方,在之前就在网上看见过,光立方的显示效果非常的炫目,便对其产生的浓厚的兴趣,也正是借着毕业设计的这次机会,对光立方有了更深入的了解,对于单片机的学习更加透彻,同时也锻炼的了自己的动手能力。本设计最终达到了预期的效果,能够显示简单的图文和动态的图案。在设计初期,由于对于单片机的只停留在课本上学习的那些基础的东西,而且时间过了很久也已经遗忘了很多,于是便去图书馆借读关于单片机的书籍,以及在网上查阅单片机的内容,通过自己的学习,以及老师的讲解,我更好的掌握了单片机的相关内容,同时也通过学习慢慢的掌握了74HC573和ULN2803等芯片的功能和工作原理,总之收获很多。在本文中简单的介绍了光立方的工作原理,以及硬件设计的和软件设计的过程,还有立方体的搭建过程。在这过程中,为了弄明白原理,以及程序的设计查阅了大量的资料,让自己充实了很多,同时,因为光立方的焊接的工作量巨大,在这个过程中,锻炼了自己的动手能力。总的来说,本设计还算成功,基本达到了预期的要求,光立方能够根据程序显示相应的图案。但是在理论与实践的衔接上仍然存在问题,在以后的学习工作中,还需不断的提高自己。参考文献1 关积珍.LED显示屏发展状况及趋势J.世界电子元器件,2000, (02):277-301.2 关积珍,陆家和. 我国LED显示屏技术和产业发展及展望.现代显示,2004,(02):34-37.3 Jeyamkondan S,Jayas D S,Holly R A.16x16 dot matrix LED has 4mm profile. Electronics Weekly,11/26/2003 Issue 2125,36-36,1/9p,1c;(AN 11842012).4 缪思恩 LED大屏幕显示电路设计J.电子技术应用,1996,(08):56-77.5 Dave Jackson. 关于DSP芯片的问与答.今日电子 ,1998,(12):1-7.6 卢弥坚.主从分布式LED大屏幕显示系统J.电脑与信息技术,1997,(04):6-13.7 高胜东,梁采,张宏富.一种LED大屏幕显示系统J.成都气象学院学报,1998,(03):108-120.8 张全福.汇编语言程序设计实验教学改革与探索.教学研究,2005,(06):3-5.9 文哲雄.用单片机控制LE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论