0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

LED立方体详细制作教程

454398 作者:工程师吴畏 2018-09-14 09:12 次阅读

这次的立方体,不管是原理图、源程序、制作流程,都会像以前一样毫无保留的分享给大家,“Chinked-out”工作室就是坚持开源,毫无保留的分享,借助网络,让大家指出不足,共同进步!!!我向大家保证,工作室后面的师弟会继续做出更好的作品,以后我也会坚持创作!现在我只完成了立方体部分,后期会推出“USB在线编辑”功能的立方体和“触摸编辑动画的”立方体,以后的立方体显示无需下载程序到到单片机,甚至支持高级语言编辑动画,也无需其他第三方软件编辑动画(点击鼠标那是个很痛苦的事情),适合业余爱好者。后期程序测试中,敬请期待!!!

组装部分

一, 灯珠焊接

最开始的金字塔,我给大家的方案是泡沫板,现在我把焊接灯珠的方式改进了,焊接速度更快、质量更好,方法如图:

就是这个,用一张18X30CM的万能板,上面焊接上间距2.54的排针,用法如下图:横向的孔数是7个,纵向孔数是8个,这样焊接出来的灯珠间距就都是8个了

一目了然,这样就把灯珠固定好了,如果管脚的弯折方法和我图片一样的话(朝下的是正极),那么最优的方法是从右到左,从上到下排放。焊接我就不多说了,这个是最讲究的,虽然有这个模板焊接起来很方便,但焊锡一定要上好,否则开焊后还是很难搞的。温度要适当,免得烧毁灯珠,一般情况下,能把焊锡刚好溶化时的温度即可。用这种方法焊接出的点阵,要比用泡沫做模板的点阵质量更好,很少有开焊点,取下的点阵横平竖直,效率上也有了极大的提高。

焊接好的平面如图:

二, 灯珠组装

在组装之前,先准备2张18X30cm的万能板,喷上黑色的喷漆,比较常用的那种,价格不贵,如图:

再拿出个8x8的点阵,比划一下,量好裁剪的尺寸,用斜口钳剪切还是很方便的。

然后就需要给底板和侧板焊接弯排针,间距都是8个孔,朝向请自己把握,下面是我做的图:

我想看了图后,大家都应该明白了,除了弯排针,还要给每个面的管脚都焊接上2.54的冷压端子,很容易的,东西也很便宜。这样做的好处就是非常容易拆装,第一次的时候我用的是直排针,结果就很难组装,弯排针不会影响美观。

在组装之前,先要焊接底板和侧板焊接上连接线,如图:

每个面都是有64根线,我用的是以前零散、没了头子的杜邦线,长度刚刚好够的,读者可以自己做线或者买成品,买成品我觉得也不贵,成品线的好处是,一端是8P的插座,另一端是裸线,直接焊接就好。

这个过程还是相当漫长的,我焊接512个灯珠用了三个下午,底板的焊接和接线同样是三个下午,可以说,老老实实的焊接的话,还是需要一周的时间的,我希望喜欢DIY的朋友们要有耐心,过程肯定是枯燥乏味的,但成功的喜悦也是难以言喻的。

三, 驱动电路

看上面的图大家就应该知道了,我延续了以前金字塔的焊接方法,只不过这次是8输入全部并联,没有递减到1,输入的并联还是用的废弃管脚,焊接起来没什么难度,之所以用2组驱动,是考虑到了电流,每个面的电流还是不小的,8个面组合起来电流就更大了,单片机自己的驱动能力是远远不够的,一组的驱动也是不够的,这是我实际测试过的结果。所以还希望大家不要嫌麻烦,当然我更期待网友给出更好的解决方案,既能节约IC也能减少焊接的工作量。

四, 总装和美化

这些工作都完成后,就是把每个面的灯珠组装上去了,实在是没什么难度,如果后期发现有坏点现象,拆卸也很方便的,补焊就是。然后就是根据原理图把后面的总线连接到245的输出上,每个面64跟线,64个输出与之对应。

初装好后,就是这样了:

后面就是美化了,软件调试过后,硬件可以正常工作的话,就开始美化,把线都整理好,用热熔胶固定,在围上护板,把电路遮挡起来。我得承认,我没老外做的好,但毕竟人家用的是16位单片机,驱动方式不一样的,自然电路不一样,这个电路还算是复杂的,不过原理简单,程序设计上也没什么难度。

原理图部分

一,原理介绍

Ledcube1里面的图是为底面的驱动图,也就是我实物的下面的板子和下面的驱动电路原理,大家看到的那64个发光二极管代表了64个共阳极接点,并不是真正的灯珠,这样画是因为proteus里我找不到更好的表达方式了,希望大家切记,那不是真的灯珠,而是底面的64个共阳极接点(每个面8个阳极8个阴极)。

至于说单片机(请忽略图里的AT单片机,做样子的),我这次用的是STC12C5A60S2,倒不是因为89C52速度不行,而是储存空间不够大,我手里64K的单片机只有这么一块,所以就用上了,大家不要担心普通51单片机的能力问题,非增强型的单片机是完全可以胜任这个程序的,我亲自测试,保证通过。

Ledcube2里面的图就是侧面板子和驱动的电路了,完全一样,只不过没画出单片机,侧面245的输出全部连接的是共阴极,同样是64个。

两个图的19脚请大家注意,是两两一组的,大家在焊接的时候也注意到这个部分的布局,否则以后组装的时候还是很麻烦的。

二,注意事项

1

驱动芯片选型:我实物用的是LS系列245,因为我实在是比较懒,没有在所有的输出上加上拉电阻,因为LS系列的刚刚好就和单片机的TTL电平兼容,即便是P0端口,不加上拉一样可以直接准确输出。可HC系列的就不行了,19脚和8跟输入脚都必须加上拉电阻,否则硬件调试的结果是不对的,这个也是我亲自测试的结果。

但不是因为这个就不选HC系列的,HC的IC扇出系数(这部分请自行网上学习)比相比LS系列就大了很多,也就是说,HC的负载能力要好,而且功耗低,在两种IC的发热上来说,我是深有体会的,HC系列的做驱动时,芯片发热不明显,但LS的就明显发热,虽然发热温度也是符合范围的,但感觉上还是不舒服的,所以在骨牌时钟的时候,我就用了HC系列的,那时候用的都是大功率二极管,换成HC的IC后,发热明显降低。

希望读者根据自己的实际情况选用IC,不管选用哪种,都要做好对应的处理方案。

2

限流电阻,我在原理图上是都画了限流电阻的,这部分加不加要看你选用什么材质的发光管,我这次用的经过测试,就不需要加限流电阻,但不保证别人选用的也能承受住IC的输出电流,而导致二极管亮度过亮。大家把买来的二极管一定要做好电流测试,看你的二极管工作在那个电流范围最稳定,再选择对应的电阻,如果大家选用的和我的是一样,自然就不需要加电阻了,我的制作清单会附在表格里,给大家参考。

3

原理图请用proteus7.5版本打开,大家就不要再加我好友问为什么图打不开或者要99se的图了,我没有,也不怎么熟悉那个软件。

程序部分

这次的程序依然是汇编,控制部分有60多行,我觉得算是简短的程序了。我在这里小小的抱怨下,希望大家不要再问我为什么不用c语言了,今天我可以告诉大家,不用c语言是因为我不会,我也比较反感别人问我这些,我也知道自己用的是汇编,很多人理解起来有困难,所以我是给了中午注释的,大家可以根据程序解构和中午注释来修改成c语言版本的。不懂汇编不是什么问题,但是不懂汉字我就不能再说什么了,本人能力有限,不能再给出c语言程序,希望大家理解。

下面,我根据我对c语言的理解,给大家做出c语言的结构

1初始化部分,主要是设置对应的中断,定时工作方式,与汇编是完全一样的

2 显示部分

A 把立方体看作8位数码管,每个面即为一个数码

B,每个面的显示原理是和8X8点阵是完全一样的,保证这段程序正确的,可以直接调用

C 查表的方式是自0起递增的,每次加1,每个画面查表64次,查表的上限为65536/64,当然,实际的情况是要小于65536的,控制程序的代码也会占用rom空间,就会导致了画面次数减少,所以,要想在有限的空间内显示更多的画面,就得尽量把程序写的简短,当然了,有的朋友会选用更大容量的单片机,查表的上线自然会增加。

注意:c语言可以直接定义16位变量,汇编在这方面是比较麻烦的,但好处是我可以调试程序来直接计算我的程序可以写到多少的上限,c语言的方法我就不知道了。但肯定是可以通过调试计算出来的。

3中断部分,为了达到动画效果切换时间可准确调节性,画面的切换用中断方式。建议大家像我这样,把时间通过一个变量来表示,这样每次只需修改一个变量,就可以设置动画的速度了。每次发送中断后,查表的变量就加64(i=i+64),然后返回显示程序继续显示,中断程序只做变量的计算,改变的是查表的地址。

4循环

A程序循环,循环的条件是i变量不满足动画显示的上限值。比如你做了八个画面,那么i的的值不满足8X64时,就继续显示,满足就清零从新开始。

B 显示循环

这个比较重要,主题的显示程序,应该是一个死循环,一直在显示一个画面,只有中断产生的时候,改变了查表的变量,才切换一次动画,每个画面都显示后,注意修正变量,能使其显示同一个画面,不管是查表的变量还是Z轴,Y轴的控制变量,都要进行初始化,直到中断的产生才改变查表的变量数值。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    237

    文章

    22449

    浏览量

    645873
收藏 人收藏

    评论

    相关推荐

    数据立方体压缩技术研究

    【作者】:陈富强【来源】:《华南理工大学》2010年【摘要】:随着商业智能技术与决策支持技术的发展,数据仓库的应用越来越广,其数据量也越来越大,对计算资源的要求越来越高。数据立方体是数据仓库中的一种
    发表于 04-24 09:17

    【GoKit申请】+调皮的立方体

    本帖最后由 987hans 于 2015-5-14 12:01 编辑 初步实现立方体以一边着地,并平稳站立。第二步预计实现以立方体其中一顶点着地并平稳站立。第三步预计在其中一顶点放置另一个电机
    发表于 05-13 11:56

    声控立方体

    想做一个声音控制的立方体,8*8*8的光立方体,采集外界的音频,作为信号。第一个问题,音频传感器,大家给推荐一个,要能识别频率。第二个问题,采集到的信号如何控制立方体。请各位指教。
    发表于 09-27 22:29

    制作CUBE8光立方3D立方体LED显示器 电子资料

    如本文题图所示,CUBE8是一个长、宽、高由8×8×8个LED灯组成的真实3D立方体显示器。其最大的特点,就是带给你未来3D技术的科技体验。光立方并非我的首创,在网上早有光立方的视频。
    发表于 04-20 06:57

    自制一个LED立方体

    描述LED 立方体 8x8x8 arduino 74hc595n
    发表于 07-13 06:40

    基于Arduino mega的8×8×8 LED立方体

    描述一个基于 Arduino mega 的 8×8×8 LED 立方体,甚至可以在动画上写下你的名字将所有组件焊接到板上后,将其连接到 Arduino 大型板并上传您的代码,然后它将显示您包含在代码中的一些动画
    发表于 08-03 07:42

    LED立方体8×8×8的资料分享

    描述令人惊叹的 LED 立方体 8×8×8这是 8×8×8 LED 立方体。它与 pcb 板和 512 led 一起工作。
    发表于 08-23 06:43

    Unity中的局部立方体图渲染技术解读

    本指南介绍了用于在Unity版本5及更高版本中实现反射的本地立方体贴图渲染技术。反射在游戏中很重要,因为它们使对象看起来很逼真。与旧的渲染技术相比,立方体贴图提供了几个优势。 例如,立方体映射解决了
    发表于 08-02 10:14

    单片机痴狂者的DIY:LED立方制作

    本内容为大家带来了LED立方制作的全过程,现在只完成了立方体部分,后期会推出”USB在线编辑”功能的立方体和”触摸编辑动画的”
    发表于 08-16 11:23 7.1w次阅读
    单片机痴狂者的DIY:<b class='flag-5'>LED</b>光<b class='flag-5'>立方</b><b class='flag-5'>制作</b>

    如何制作LED立方体夹具

    所以现在您有了一个完整的LED立方体。夹具,它肯定会使您简化LED立方体 的工作。现在,您可以将所需的彩色LED放到夹具中,然后开始将它们焊
    的头像 发表于 11-20 09:44 1870次阅读

    基于Arduino mega 8×8×8 LED立方体

    电子发烧友网站提供《基于Arduino mega 8×8×8 LED立方体.zip》资料免费下载
    发表于 07-20 17:14 1次下载
    基于Arduino mega 8×8×8 <b class='flag-5'>LED</b><b class='flag-5'>立方体</b>

    LED立方体开源项目

    电子发烧友网站提供《LED立方体开源项目.zip》资料免费下载
    发表于 08-01 10:12 2次下载
    <b class='flag-5'>LED</b><b class='flag-5'>立方体</b>开源项目

    5x5x5 LED立方体开源分享

    电子发烧友网站提供《5x5x5 LED立方体开源分享.zip》资料免费下载
    发表于 11-16 11:39 0次下载
    5x5x5 <b class='flag-5'>LED</b><b class='flag-5'>立方体</b>开源分享

    8x8x8 LED立方体制作

    今天,我们就来介绍如何做一个我们自己的8x8x8 LED立方体,希望入门级爱好者能够顺利完成它。
    的头像 发表于 11-25 17:00 4485次阅读

    使用Arduino Nano制作一个4×4×4 LED立方体

    在这个项目中,我们将使用 Arduino Nano 制作一个很酷的 4×4×4 LED立方体LED 立方体,也称为
    的头像 发表于 02-11 12:07 1332次阅读
    使用Arduino Nano<b class='flag-5'>制作</b>一个4×4×4 <b class='flag-5'>LED</b><b class='flag-5'>立方体</b>