標(biāo)題: DIY LEDCUBE 自制立方燈 [打印本頁]

作者: liuj    時間: 2013-10-16 21:32
標(biāo)題: DIY LEDCUBE 自制立方燈
這個是參考國外網(wǎng)站做的然后發(fā)布到51hei論壇來的,偶然在國外網(wǎng)站上看到老外做的LED光立方,看了視頻后,覺得特別炫,于是準(zhǔn)備自己也做一個,于是參照它的方案做出了下面大家看到的這個光立方,做工不是很精細(xì),希望大家批評指教。今天發(fā)貼于此,與大家共同學(xué)習(xí),共同進(jìn)步。費(fèi)話不多說,下面正式介紹我的這個LEDCUBE。
視頻:
http://player.youku.com/player.php/sid/XNDQ0Njg1NTUy/v.swf
1,準(zhǔn)備材料
●512*LEDs(多買幾個,以防止有的是壞的,最好是霧面的,如果買來的不是霧面LED,可以住LED上輕微噴些白漆以達(dá)到效果)
●細(xì)鐵絲(用來焊接LED,如果買的LED引腳夠長可以不用)
●64*電阻(510R左右的) 8*電阻(220R,三極管基極) 8*電阻(2.2K,三極管上拉)
●8*74HC574(鎖存器,多路復(fù)用,也可采用595移位寄存器,本方案用574,595不再討論)
●1*74ACT138(譯碼器,給574產(chǎn)生時鐘信號)
●8*s8050三極管(用作開關(guān)管)
●電解電容(主要為電源電路部份用)
●USB母頭
●開關(guān)
●DC接頭
●一塊MCU最小系統(tǒng)板(本方案采用飛思卡爾的XS128,有點(diǎn)奢侈,其實(shí)用51單片機(jī)就可以,比如12C5A就ok)
●兩塊20cm*20cm的鋪銅板(本方案板子全部自己用Altium Designed畫出來,然后用感光綠油曝光和腐蝕,也可用洞洞板自己搭,不過比較麻煩,工產(chǎn)打樣同樣也是忒貴,還是腐蝕板最為經(jīng)濟(jì))
(如果采用腐蝕板,還需要準(zhǔn)備以下東西)
●紫外燈(日光燈也可,不過爆光時間需要自己實(shí)驗(yàn)得出)
●顯影劑
●感光綠油
●環(huán)保型腐蝕劑(或者三氯化鐵)
●脫膜劑


2,什么是立方燈呢?
       立方燈就像是一個LED屏幕,但是它特殊在有第三維,使得它能夠有3D效果?梢园阉J(rèn)為是透明且低分率的顯示器。正常顯示器是盡最大程度堆棧象素來使得顯示出來的東西更加真實(shí)漂亮,但是在立方燈必須能看得到里面,同時在象素間需要更多空間。
       立方燈不需要遵循什么標(biāo)準(zhǔn),它可做成7*8*9,甚至更加古怪的形狀。




3,立方燈如何工作       這個立方體有512LED。很明顯,每個LED有一個專用的IO端口是非常不切實(shí)際的。你需要一個有512IO端口的微控制器,通過該多維數(shù)據(jù)集運(yùn)行512線。LED立方體依賴一個光學(xué)現(xiàn)象叫做持續(xù)幻象(POV)。如果你led閃爍的非常快, led關(guān)掉前,圖像將留在你的視網(wǎng)膜一小會兒。通過閃爍每一層多維數(shù)據(jù)集的一個接一個的反應(yīng)非?,它給人一種3 d圖像的感覺,事實(shí)上你看到是一系列的二維圖像堆積成的。有了這個這些,我們只需要64(為陽極)+ 8(每一層)IO端口控制LED多維數(shù)據(jù)集。




4,剖析立方燈       下面我們看一下LEDCUBE的立體結(jié)構(gòu)。       一個LED有兩個引腳,一個陽極和一個陰極,為了點(diǎn)亮LED,我們要使得陽極為高電平,而陰極為低電平。       LED立方燈由64列和8層組成,每一列也就是連線垂直地面的8LED,這8LED的陽極是連接在一起的;每一層是由平行地面的64LED組成的,這64LED的陰極是連在一起的。       在控制的時候,每次讓其中一個面的選中(也就是讓其中一個面的陰極為低電平,其它面仍然保持高電平),然后從鎖存器讀出這一層的數(shù)據(jù)輸出到64列,這樣就完成了一次層掃描,按照這樣的方式依次掃描其它7層就可以完成一次LED掃描。LED立方的結(jié)構(gòu)。




5,驅(qū)動電路       我們的LED立方燈為8*8*8的,這樣需要有至少64+8IO口進(jìn)行控制,如果用超過64個引腳的單片來控制,這會大大增加我們的成本,一般的51單片機(jī)又沒這么多的引腳,為了解決這個問題,我們采用74HC574鎖存器多路利用。       74HC574:    8個輸入●8個輸出●1個時鐘信號●1個輸出使端    鎖存器最終要完成的工作就像一個簡單的緩存,鎖存器能保持8位數(shù)據(jù),當(dāng)輸出使能有效時,數(shù)據(jù)將送到輸出引腳。當(dāng)時鐘發(fā)生上升沿的時候,鎖存器數(shù)據(jù)被刷新一次。為了能夠刷新到8個鎖存器,我們將8個鎖存器的8個個輸入分別接在一起,構(gòu)成8bit數(shù)據(jù)總線,然后能過8個使能端的控制分別刷新8個鎖存器。    下面的代碼實(shí)現(xiàn)刷新鎖存器的功能。

// PORT A = data bus
// PORT B = address bus (74HC138)
// char buffer[8] holds 64 bits of data for the latch array
PORTB = 0x00; // This pulls CP on latch 1 low.
for (i=0; i <8; i++)
{
PORTA= buffer;
PORTB = i+1;
}




6,主板電路  
我們采用的主板上面主要是由主控核心板組成,還有一個三管開關(guān)電路組成,沒有什么多的東西,不再細(xì)說。下圖為主板控制電路。     




8,制作過程圖集
********PCB制作圖集********











***************************

********LED搭建圖集********










**************************

********整體效果********





***********************

電路圖資料.rar (47.1 KB, 下載次數(shù): 232)
DIY電路板.pdf (1.9 MB, 下載次數(shù): 271)
代碼.rar (107.75 KB, 下載次數(shù): 178)

作者: liuj    時間: 2013-10-16 21:33
下面再補(bǔ)充一點(diǎn)關(guān)于程序的問題,其實(shí)整個程序的結(jié)構(gòu)框架很簡單,無非就是在中斷里不斷的掃描,然后在main()函數(shù)里不斷向鎖存器buffer里面寫數(shù)據(jù)。在調(diào)中斷的時候需要注意的一個問題是,要不斷調(diào)試多長時間進(jìn)行一次中斷,當(dāng)調(diào)至掃描的時候燈最亮為佳。下圖附件為程序流程圖。


/*****************************************************************************/
程序中各文件說明:
main.c  //這個地球人都知道,就不多說了
main.h  //對接口及狀態(tài)量進(jìn)行宏定義,方便使用
cube.h  //同樣進(jìn)行宏定義

Draw.c      //效果函數(shù)的底層,定義基本函數(shù)為實(shí)現(xiàn)各種動態(tài)效果做鋪墊
              //函數(shù)舉例:
             //setvoxel(int x, int y, int z)為點(diǎn)亮坐標(biāo)(x,y,z)處的led
            //line(int x1, int y1, int z1, int x2, int y2, int z2)為點(diǎn)亮(x1,y1,z1)和(x2,y2,z2)之間的led
           //shift (char axis, int direction);將led所有象素沿著axis軸的direction方向平移

font.c //字庫,顯示字母用得到

effect.c //調(diào)用Draw.c中的基本函數(shù)實(shí)現(xiàn)動態(tài)效果

Launch_effect.h  //其實(shí)里面只是一個switch函數(shù),就是切換效果的作用,這樣在main里就不用大段的調(diào)用效果函數(shù)
/*****************************************************************************/

從上面分析知道,要移值這個程序也是相當(dāng)簡單的,只要把你采用的單片機(jī)的中斷調(diào)好,很實(shí)現(xiàn)基本的掃描,那么基本成功了,最后要做的就是把效果函數(shù)移植進(jìn)去。

作者: zhouyubo163    時間: 2014-4-7 19:22
不錯的,51黑有你更精彩。
作者: 劉仁福    時間: 2014-4-10 13:11
不錯啊
作者: rich3524    時間: 2014-5-14 17:43
好,謝謝分享
作者: zhce    時間: 2014-5-17 19:44
第二步  準(zhǔn)備工具       基本的電子制作工具: 1、電烙鐵一個。 2、焊錫絲若干。 3、松香少許,助焊劑也可以。 4、鑷子(有更好,沒有也行)。
作者: xiaozhi_cc    時間: 2014-7-4 22:54
真心好東西
作者: xiaozhi_cc    時間: 2014-7-4 22:55
求M幣下載
作者: xiaozhi_cc    時間: 2014-7-4 22:56
給力。。。。。。
作者: zwpkzw    時間: 2014-7-7 13:36
謝謝樓主分享
作者: 露露    時間: 2014-10-8 16:58
謝謝分享。。。
作者: xets2000    時間: 2014-10-9 09:09
高手。。。。。。。。。。。。。。。。。!
作者: 威斯布魯克    時間: 2014-10-10 23:41
呼呼,終于找到完美的資料了。謝了撒
作者: 熱愛DIY    時間: 2014-10-13 19:20
學(xué)習(xí)了,,,,,,,
作者: aidanpianji    時間: 2014-10-13 19:27
高手高手高高手
作者: hanyubo    時間: 2014-11-16 13:51
奧會分解為
作者: hanyubo    時間: 2014-11-16 13:51
謝謝樓主謝謝
作者: hanyubo    時間: 2014-11-16 13:53
真的很好用唉
作者: hanyubo    時間: 2014-11-16 13:53
真的大開眼界
作者: 1426134543    時間: 2014-11-29 03:24
看了挺久才看懂,不過能看懂就好,謝謝lz
作者: 飛舞2014    時間: 2014-11-29 23:10
美 很美 非常美
作者: jnwyj    時間: 2014-11-30 00:59
沒有M幣下不了啊
作者: mycookie    時間: 2014-12-9 10:32
真心好東西
作者: 淘淘    時間: 2014-12-9 23:03
漂亮。。。。。
作者: pps111    時間: 2014-12-19 22:05
還是值得收藏
作者: pps111    時間: 2014-12-19 22:05
謝謝了讓
作者: pps111    時間: 2014-12-19 22:06
太好了
作者: pps111    時間: 2014-12-19 22:07
學(xué)習(xí)中。不簡單
作者: LN555    時間: 2014-12-19 23:13
求PCB工程
作者: 51hei電控2112312    時間: 2014-12-20 02:51
很好,正需要
作者: 師太來取精    時間: 2015-1-7 22:28
謝謝分享
作者: sglf0201    時間: 2015-1-22 13:25
有打算做一個,好資料,謝謝
作者: Gameboy    時間: 2015-1-25 22:14
謝謝分享
作者: rich3524    時間: 2015-2-5 13:59
謝謝分享
作者: l754768458    時間: 2015-4-24 20:58
真不錯謝謝謝謝
作者: 騰飛的龍    時間: 2015-5-11 08:00
牛氣,真正的DIY值得分享!贊
作者: ludaijin    時間: 2015-9-7 13:40
有打算做一個,好資料,謝謝
作者: 日明月    時間: 2015-9-28 18:18
樓主這是8*8*8的嗎
作者: 中國移動我不    時間: 2015-10-12 13:57
錫怎么捍在鐵絲上的?
作者: Alng_夜鷹    時間: 2015-10-18 19:42
感覺樓主好可愛!。
作者: 墨跡ddc    時間: 2016-3-2 20:56
資料很好,感謝樓主
作者: chn_zzh    時間: 2016-6-17 11:09
可惜沒有黑幣,唉
作者: 594sqq    時間: 2016-7-25 15:40
請問 程序用keil編譯燒錄的嗎?
作者: 電發(fā)友    時間: 2016-8-19 14:18
沒有程序也弄不了啊
作者: 電發(fā)友    時間: 2016-8-19 14:19
沒有程序也弄不了啊
作者: ilylyp    時間: 2016-9-24 22:42
正是我想要的  謝謝
作者: hzhlllll    時間: 2016-10-13 16:24
好棒啊,大手

作者: y1145343666    時間: 2016-10-13 21:19
好牛啊,我也在學(xué)習(xí),不過是在學(xué)習(xí)走路。。。。
作者: 小學(xué)生打聯(lián)盟    時間: 2016-11-2 14:30
樓主能不能直接吧所有程序打包發(fā)給我,hex文件,我是一個大一新生,想做一個,程序還寫不出來


作者: 1027711848    時間: 2016-12-2 07:42
看看做的不來
作者: 無時崩潰    時間: 2017-4-23 23:08
感謝樓主分享
作者: wpsczw@126.com    時間: 2017-5-19 10:52
好帥!想試試,下個資料看看
作者: wpsczw@126.com    時間: 2017-5-19 10:54
正是我想要的  謝謝
作者: blueice1998    時間: 2017-11-8 19:20
很棒,參考一下打算也做一個
作者: yatou520    時間: 2017-11-10 09:13
謝謝樓主分享的好東西
作者: hujinchen87    時間: 2017-11-29 16:05
感覺好好啊
作者: vhoux    時間: 2018-5-2 22:33
感謝分享。
作者: siliekakaxi    時間: 2018-6-7 13:37
樓主好強(qiáng)大啊。問一下這些LED燈如何接電阻呢?
作者: 春風(fēng)得意    時間: 2019-9-5 14:06
學(xué)到了學(xué)到了
作者: 夢里藍(lán)星    時間: 2021-4-17 09:23
請問代碼編譯為什么會有這么多錯誤,我該怎么辦




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1