完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
`` 3Dcube8(光立方)是一个由LED组成的3D显示器,是一个集实际型 、经济型、性价比高的艺术品, 它不仅仅局限于装饰,更是能够帮助更好的学习C语言实际应用、满足单片机爱好者对单片机的研究的个好工具。3Dcube8有多种规格,常见的有单色4*4*4、单色8*8*8、RGB全彩光立方等。其中前者是这之中最简单的,制作难度和成本最高的是采用RGB的全彩光立方,这里我选择制作单色8*8*8。 1、项目材料简介: Led的选择:市面上有很多种发光二极管,按形状分方形和圆形草帽状、按效果又有高亮雾面等区别。考虑到美观和降低制作难度,我选择了3mm长脚高亮雾面发光二级管,长脚的最大优势就是可以作为支架,省时省力。 驱动方式利用人眼视觉暂留特性,利用逐层扫描的方式,来达到显示各种图案的目的。常见的coms锁存器(cmos发热低,优先选择)有74hc573和74hc595,前者为并入,后者串入。因为不需要光立方的级联设计,所以采用573锁存器。 主控芯片选择较多,有常见的AVR、STC、Arduino 等。根据之前学过的课程,我们决定采用stc系列的STC89c5A60S2增强型单片机作为主控芯片。之所以不选89C52等芯片,不是因为他们的运算速度不够,主要原因是它们的片上flash太小,难以满足需求,其次是因为自己有闲置的STC89C5A60S2,片上内存大,运算速度1T,即充分利用资源节省成本,又可以实现所需要的功能需求。最后就是附属配件 u***转ttl串口的stc下载线。选择采用cp2102作为u***转串口芯片方案,下载STC单片机完胜PL2303方案,最高下载速度可达115200波特率。 2、详细制作步骤 一. 电路设计 1. 软件部分 实验环境:AD13, 该部分我们在altlium designer 13上完成,及用 altlium designer 13画出所有原理图,然后生成PCB,最后将PCB图发给工厂,制造出对应的电路板. a. 控制模块——单片机最小系统 b. 驱动电路——p口接8片573le端 在驱动电路上,图中的电阻都是150r的限流电阻,限流电阻130r为理论值.大于这个小于这个都可以。限流电阻r=(vcc-vf)/i,Vcc电源电压,Vf为led的正向电压降,I为led的工作电流,I大了,就亮,小了就会偏暗。 到此,光立方的原理部分就结束了,接下来就该做PCB部分了.全部原理图如下图所示: c. PCB图的生成 我们将完成的原理图(图4)导入到PCB项目里,并进行合理的布局,然后开始布线,最后覆铜(如图5,图6)保存文件并将文件发给PCB板制造工厂。接下来就是短暂的等待。 在此期间我们可以进行下一步的制作。 2. 硬件部分 a. 显示电路 ——led点阵屏的制作 现将选定的LED灯弯曲成图7的样子,再按照图8将LED灯焊接在一起,一共需要焊接512个,共8片,每片64个。单片焊接完成如图9,图10,8片焊接结束如图11 图12。将8片LED按照8X8X8排列在一起,如图13图14。 将LED灯焊接完成后,相信我们定做的PCB板也完成了,那么接下来我们开始焊接电路板,因为电路板上都是贴片,元器件非常小,所以在焊接过程中我们可以选用镊子夹住元器件,先在电路板上固定一只管 脚,在逐一将其焊接…… 到此,我们的焊接部分全部结束,接下来又要开始软件部分,不过在进行软件部分以前,我们需要吧焊接好的LED灯插入到PCB正面上的排母里,如图17、图18。 3.软件部分 所需软件:keil4.0、STC-ISPv4.80 这里主要是将程序烧录到单片机内,当然,这需要经过很多次的调试才能完成,呈现出自己想要的效果,感觉这是一个巨大工程,不过只要有恒心,一切都不是事,哈哈……下图是程序中的一小小小部分 补充:程序的设计分为4部分 1. 初始化部分 主要是设置对应的中断,定时工作方式。 2. 显示部分 把立方体看作8位数码管,每个面即为一个数码管,每个面的显示原理是和8X8点阵是完全一样的,保证这段程序正确的,可以直接调用。查表的方式是自0起递增的,每次加1,每个画面查表64次。当然,实际的情况是要小于65536的,控制程序的代码也会占用rom空间,就会导致了画面次数减少,所以,要想在有限的空间内显示更多的画面,就得尽量把程序写的简短。c语言可以直接定义16位变量。 3. 中断部分 为了达到动画效果切换时间可准确调节性,画面的切换用中断方式。把时间通过一个变量来表示,这样每次只需修改一个变量,就可以设置动画的速度了。每次发送中断后,查表的变量就加64(i=i+64),然后返回显示程序继续显示,中断程序只做变量的计算,改变的是查表的地址。 4. 循环 程序循环,循环的条件是i变量不满足动画显示的上限值。比如做八个画面,那么i的的值不满足8X64时,就继续显示,满足就清零从新开始。 显示循环 主题的显示程序,应该是一个死循环,一直在显示一个画面,只有中断产生的时候,改变了查表的变量,才切换一次动画。每个画面都显示后,注意修正变量,能使其显示同一个画面,不管是查表的变量还是Z轴,Y轴的控制变量,都要进行初始化,直到中断的产生才改变查表的变量数值。 经过多次反复的调试,终于成功了,达到了我们想要的结果,可是那么高大上的东西,总要有个外壳吧,为了方便,实惠,我们选用3d打印机自己做咯,首先我们3D建模软件(这里使用soildwork,也可以使用其他,如3DMax等)画出相应尺寸的模型(如图19然后使用cura设定打印参数,最后将文件导入打印机,开始打印,几个小时之后,就可得到我们想要的模型了,如图20) 到了这里,我们的单色8*8*8光立方也就结束了,套上外壳并插上电源,期待已久的画面瞬间亮瞎了我的眼睛 好咯,接下来让我们一起来欣赏那动人的画面 视频演示: 项目补充: 1. 测试方案 a、在8片点阵屏搭建完成之后采用点阵屏整面点亮方式检查每一面LED的通电情况,有过亮、过暗或者完全不亮的及时拆换。 b、检查电路板的焊点和飞线是否有虚焊或者漏焊情况,元件正负极有无颠倒情况。 c,、电路组装采用整体组装整体测试方式。 d、烧录测试程序,检查光立方的全亮状态下有没坏点。 2. 注意事项 a、搭建LED一定要主要,焊接温度和静电问题! 以上情况,会照成LED损坏,和LED微亮的情况。 (距离LED灯头 3mm左右 电烙铁 放在上面加锡。5-10秒LED就会坏的,尽量焊接一个点在3秒左右,就算一次不成功也没事等他冷却了,在焊接)。电烙铁接地处理里没有地的,在电烙铁头铁壳上绑一根电线,脚踩在水泥地板上线踩在脚下。 b、 LED的间距 LED间距为20M,就是刚刚好标准洞洞板9个孔间距。 3.后期制作 在后期,我们将继续对光立方进行更深入的研究与制作,做出更大更绚丽的光立方。 ``
VK1621B-LCD液晶显示驱动IC.pdf
(1.41 MB, 下载次数:
)
VK1622B LQFP48液晶驅動IC.pdf
(600.82 KB, 下载次数:
)
VK1622液晶驱动IC资料.pdf
(623.5 KB, 下载次数:
)
|
|
相关推荐
43 个讨论
|
|
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-29 07:07 , Processed in 0.707203 second(s), Total 58, Slave 44 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号