光立方设计文档.docx_第1页
光立方设计文档.docx_第2页
光立方设计文档.docx_第3页
光立方设计文档.docx_第4页
光立方设计文档.docx_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

8*8*8光立方摘 要 本设计制作出一个三维立体显示图案的LED光立方。不仅可以像发光二极管点阵一样显示平面的静态或动态画面,还可以显示立体的静态或动态画面,打破了传统的平面显示方案。同时又增加了显示的花样和立体图案显示效果,可以广泛用于传媒信息显示和各种装饰显示,光立方显示比发光二极管点阵更具有视觉效果,而且画面图案更加非富多彩。 本设计是采用STC15W4K58S4单片机为核心控制器,74HC595扩展I/O口,完成硬件电路设计。通过软件编程控制数据下载到单片机完成设计图案的显示。软件采用自上而下的模块化设计思想,使系统朝着分布式、小型化方向发展,增强系统的可扩展性和运行的稳定性。 关键词 STC15W4K58S4单片机; ULN2803驱动管;74HC595。目 录8*8*8光立方11、 设计要求与方案11.1 设计目的11.2 设计思路12、工作原理12.1模块的简介12.2 8*8*8光立方工作原理13、方案选择23.1电源的选择23.23D显示核心控制芯片33.3I/O口扩展芯片的选择33.4LED发光显示二级管34、硬件整体设计概述及功能分析34.1系统概述44.2系列单片机简介54.3时钟电路设计54.4 复位电路设计54.5 74HC5795芯片连接电路图与介绍65、主程序设计思路75.1显示程序的设计76、硬件电路设计86.1 焊接准备86.2 焊接步骤86.3 焊接技巧87、收获总结91、 设计要求与方案1.1 设计目的 在当今的信息化社会中,为追求逼真、清晰的3D视频显示,平面的二位显示早已不在是主流,为此制作出一个三维立体显示图案的LED光立方。该设计方案将打破了传统的平面显示视频的方法,该方案设计的LED显示屏显示画面色彩鲜艳,立体感强,可以广泛应用于各种工场合的多种用途。1.2 设计思路本设计根据二极管点阵的原理由单片机I/O口控制点亮不同的二极管从而组成出不同的画面,根据人眼的视觉暂留现象即当物体移去时视觉神经对物体的印象不会立即消失而是要延续短暂的时间 ,来设置每幅画面的延迟时间使连续的一系列画面呈现动态。每一个层面的二极管阳极接在一起受一路I/O口控制。每一个二极管的阴极分别受单片机扩展后的I/O控制。每个灯都是由片选端口和控制端口共同决定亮或灭。因此,我们可以随意的来点亮立方体中任意一处的灯,来构建多种多样的图案。2、工作原理 2.1模块的简介 有8个8*8点阵,再用8个引脚来当充当各个8*8点阵的“开关”。每一列共阳极,通过8个74HC595的数据输出来控制每一列的通与灭。每层灯的阴极全连接在一起接入单片机,由单片机控制的每一个层灯。通过单片机主控芯片STC5A60S2来控制所有灯的亮灭,从而实现立体控制来显示我们所需要显示的现象。整个设计主要分为三个模块分别是主控模块、驱动模块、显示模块.。 2.2 8*8*8光立方工作原理 本设计介绍一个8*8*8 LED光立方显示屏的制作,在单片机的P0口输出显示代码,然后把扫描片选择锁存器送入74HC595。考虑到P0口必需设置上拉电阻,我们采用1k电阻作为上拉电阻。 设计原理:利用单片控制LED点阵显示的原理和控制技术,来制作控制光立方显示。通过编写程序控制不同LED的显示,显示所要显示的内容。根据人眼的视觉暂留效应,设置每幅画面的延迟时间使连续的一系列画面呈现动态。最终达到所要显示的内容。每个灯都是由层控制端和列控制端共同决定亮或灭。开始单片机控制控制相应列驱动控制相应行驱动控制相应位置的LED灯亮结束单片机控制流程图在三维光立方中采用动态扫描显示,这种显示方式巧妙地利用了人眼的视觉暂留特性。将连续的几帧画面高速的循环显示,只要帧速率高于24帧/秒,人眼看起来就是一个完整的,相对静止的画面。最典型的例子就是电影放映机。在电子领域中,因为这种动态扫描显示方式极大的缩减了发光单元的信号线数量,因此在LED显示技术中被广泛使用。3、方案选择3.1电源的选择方案一:采用普通干电池作为LED系统的电源,由于点阵系统耗电量较大,点阵系统一般悬挂在高处上,一直不停的工作。使用干电池需经常换电池,不符合节约型社会的要求。方案二:采用一块LM7805三端集成稳压器。把市电经变压器降压输入电路,而后整流送到LM7805三端稳压器稳压输出作为工作电压。不仅功率上可以满足系统需要,不需要更换电源,并且比较轻便,使用更加安全可靠。方案三:通过USB直接供电。经过分析,方案一电池电压不稳定,而且不能直接供电压,方案二有耗费资源,决定采用通过USB直接供电。3.23D显示核心控制芯片控制部分是整个系统的核心部分,其功能可以实现与上位机通信接收上位机发送的数据和控制指令经处理过后控制显示屏显示内容。我们常用的电子设计方法是单片机。考虑到经费问题,加上自己对单片机的掌握情况,以及程序对单片机的储存要求,我门采用的是STC15W4K58S4单片机。单片机:单片机是集成了CPU,ROM,RAM和I/0口的微型计算机。它有很强的接口性能,非常适合于工业控制,因此又叫微控制器(MCU)。单片机品种齐全,型号多样,CPU从8,16,32到64位,多采用RISC技术,片上I/O非常丰富,有的单片机集成有A/D、“看门狗”,PWM,显示驱动,函数发生器,键盘控制等。它们的价格也高低不等,这样极大地满足了开发者的选择自由。除此之外单片机还具有低电压和低功耗的特点。随着超大规模集成电路的发展,单片机在便携式产品中大有用武之地。3.3I/O口扩展芯片的选择方案一:选取串口输入并口输出芯片74LS164,虽然I/O口使用较少,由于本次设计共需要72路I/O口,列驱动电路就需要8块74LS164。显示数据是先后顺序给送去的,显示会有延迟,而LED动态显示的刷新的时间控制大约10ms,实时性差,效果不好。方案二:74HC595的输入是和标准CMOS输出兼容的;当锁存使能端为高时,这些器件的锁存对于数据是透明的(也就是说输出同步)。当锁存使能变低时,符合建立时间和保持时间的数据会被锁存。8块74HC595共用64个I/O口,数据可以并行写入芯片,延迟时间少,满足设计要求。综合以上比较,决定选取74HC595作为列线驱动IO口扩展芯片。3.4LED发光显示二级管经过对比,我认为2*5*7mm雾状蓝灯显示效果好看,并且价钱便宜。故该设计我选择了2*5*7mm雾状蓝灯作为LED发光显示二极管。4、硬件整体设计概述及功能分析4.1系统概述3DLED光立方总体框图如图所示。电路大体上可以分成核心控制电路、显示驱动电路、串信通信电路三部分。核心控制电路部分包括一个STC15W4K58S4系统CUP和一些外围电路。在整个电路当中此电路部分可以相当于一个上位机,它负责控制整个电路以及相应的程序的运行、与PC机的串行通讯、以及给显示屏部分发送命令。单片机根据编写好的内容和指令通过I/O口扩展后驱动8*8*8的LED光立方显示屏。本次设计将以此方案为指导思想展开具体的硬件电路设计。显示电路采用动态扫描方式进行显示时,每列有一个列驱动器,各列的同行共用一个行驱动器。由单片机发出数据给74HC595锁存,然后在来一个脉冲信号,同步输出到各列中,同时P0口控制各行的通与不通,一起控制LED灯的显示效果。整体的pcb电路图4.2系列单片机简介单片机是在一块硅片上集成了各种部件的微型机,这些部件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时器/计数器和多种I/O接口电路。单片机最小系统包括时钟电路和复位电路。时钟电路用于产生STC15W4K58S4单片机工作时必需的控制信号。单片机的内部电路正是在时钟信号的控制下,严格地按照时序执行指令进行工作。复位电路是为单片机初始化操作准备的。只要单片机的复位引脚RST上的复位信号要持续两个机器周期(24个时钟周期)以上,就可以使STC15W4K58S4单片机复位。 STC15W4K58S4引脚图4.3时钟电路设计STC15W4K58S4单片机各功能部件的运行都以时钟信号为基准,有条不紊、一拍一拍地工作。因此时钟频率直接影响单片机的处理速度,时钟电路的质量也是直接影响单片机系统的稳定性。常用的时钟电路有两种方式,一种是内部时钟方式,另一种是外部时钟方式。本次采用内部时钟方式。4.4 复位电路设计 STC15W4K58S4单片机在启动运行时或者出现死机时需要复位,使CPU以及其他功能部件处于一个确定的初始状态,PC初始化为0000H。单片机从这个状态开始执行程序。除了进入系统的正常初始化之外,当程序行出错(如程序“跑飞”)或操作错误使系统处于 “死锁”状态时,也需要按复位键即RST脚为高电平,使STC5A60S2摆脱“跑飞”“死锁”状态而重新启动程序。单片机有多种复位方式,常用的复位操作有上电复位和手动按键电平复位方式。本设计采用手动按键电平复位方式。上电复位是通过外部复位电路的电容充电来实现的,复位电路产生的复位信号(高电平有效)由RST通过复位电路相连,手动输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号对STC15W4K58S4单片机进行复位。当上电时,C相当于短路,有时碰到干扰时会造成错误复位,可在复位端加个去耦电容,可以复位电路更加可靠。4.5 74HC5795芯片连接电路图与介绍 74HC595电路连接图图四:第一片74HC595连接放大图74HC595引脚图及功能表5、主程序设计思路5.1显示程序的设计5.1.1LED显示屏的数据传送动态扫描显示是把整个LED屏幕分成若干部分,每一幅画面显示过程是显示完一部分后,又显示第二部分,直到显示完最后一部分又重新开始显示第一部分,重复循环进行。在重复扫描速度足够快的情况下,只要扫描速度1S超过25次,我们看到的就是一幅稳定的静态画面。也就是说采用动态扫描显示需要不断进行画面的刷新。动态扫描分为行扫描和列扫描,两种方式区别在于选通端和数据输入端分别是行还是列。先选通列然后再从行送入对应列的数据,这样从第1列到第8列循环往复,只要切换的速度足够的快利用人眼的延时特性就可以看见一幅稳定的画面。5.1.2显示程序的设计显示采用的是扫描显示方式,选通一列后按照列对应的数据表的数据第i列对应的列数据为数组中的第i和第i+7个元素。将对应数据由低至高位依次从控制端口输出显示。向右逻辑移位所得结果通过单片机端口输出到锁存器,通过片选需要显示对应的锁存器在输出显示。如此依次循环选通各列来显示所需画面。把显示的数据送到P0口,相应的锁存器接收数据,再把片选锁存器的数据送到端口,相应锁存器接收数据并锁存输出显示,接着把下一组数据送到P0口,改变片选锁存器的数据,送到相应锁存器输出显示,直到把所有的数据输出传送完毕后,显示完成后,退出显示程序,等待指令。输出形式多种多样,可以静态输出图案,也可以动态、左移、右移、循环等花样显示。6、硬件电路设计6.1焊接准备准备好烙铁、焊锡丝、钳子等工具,以及LED。LED的正负极很好判别,长的引脚为正,短的为负。LED最好选用直径3mm的LED,推荐选蓝色。长脚的LED可以省很多工作量。由于所有LED框架焊接好后,一旦有LED损坏更换难度很大,所以焊接前要测试所有LED,用一般数字显示万用表打到二极管量程,用万用表红表笔接长引脚,黑的接短引脚。LED正常发光并且亮度基本一致,这样的LED就是好的,否则是坏灯。如果为了确保可靠也可以焊接好一排和一行后测试LED是否能点亮。6.2 焊接步骤先把8个灯焊成一条,共需64条。然后每8条焊成一行,每一行会流出来一个引脚,这个引脚就是负极。然后在把8层层层叠上去。每一条都需要测试一下灯泡是否损坏,同时,焊接好每一层以后一需要一个一个去测试一下灯泡是否有损坏。板子的焊接需要从主芯片开始,每焊一个芯片,都要进行一下测试,保证没有问题以后在继续焊接下一个芯片。这样可以避免很大的问题出现。最后测试没问题以后把灯焊接到板子上,最终形成一个3D8光立方。6.3 焊接技巧对于贴片电子元器件的焊接技巧是先把一面的引脚整体的焊接到焊盘上,保证没有虚焊就可以。第二步用松香在引脚上面自上而下刮两遍即可分离各个引脚之间的7、收获总结这算是我第一次自己一个人独自完成一个小项目,从开始计划做这个东西到现在已经过去了两三个月的时间。在这

温馨提示

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

评论

0/150

提交评论