找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7713|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

基于STC單片機的光立方設(shè)計原理源碼和架構(gòu)說明

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:433795 發(fā)表于 2018-11-26 22:30 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
本文說明書將以看圖說話的方式詳細介紹光立方的搭建過程,以及闡述光立方的設(shè)計原理和架構(gòu)方法。這些內(nèi)容如圖一所示大致分為如下三個部分。
圖一 光立方的設(shè)計思路示意圖
  • 光立方的立方體LED點陣的搭建
圖二 (a)霧狀方形LED燈;(b)層示意圖;(c)立方體點陣實物圖
如圖二所示,LED點陣由512個2*5*7mm的霧狀方形藍色發(fā)光管采用層共陰、豎共陽的方式焊接而成,采用LED霧燈可以很好的收聚光線,使要顯示的燈的光亮不會影響周圍燈的亮度,暗滅很明顯,利于效果呈現(xiàn)。這里層共陰豎共陽的意思說光立方的每一層的負極都接在一起,一共8層,最后引出8根跳線與底座電路連接(與8個100Ω電阻串聯(lián)后接在STC單片機P0口),陽極則層與層之間對應(yīng)連接在一起,一共有64個口,分別接在底座電路圖的8個74HC595的IO口中。這種層共陰、豎共陽的方式焊接,可以使所有LED燈并聯(lián)連接,不相互影響,通過程序控制,可以點亮任意LED。
圖三 焊接現(xiàn)場
焊接的方式是將每個LED燈的正負極彎折成90度,固定在事先制作好的間距為20mm的陣列模板中,將所有正極用工具將其盤出一個圓環(huán),所有LED的負極則相互搭在一起,然后焊牢,一層則制作完成。正極的圓環(huán)是用來最后在每層都焊好的時候,將所有層上下連接在一起而準備的。
如這樣,最后完成了光立方立方體點陣的焊接,如圖二(c)所示。
  • 光立方底座電路原理講解
圖四 電路原理圖
底座硬件電路以STC單片機為控制中心,主要包含復(fù)位電路,時鐘信號電路,以及595控制電路,如圖四原理圖所示。
圖四所示595電路設(shè)計,按照前部分立方體點陣搭建思路,可知最少需要用到的單片機IO口就需要64+8個,對于40PIN的STC12C5A60S2顯然IO口不足,所以我們使用8個74HC595芯片來節(jié)約單片機的IO口資源, 分別用來控制每一層中每一列的LED燈。在圖中,數(shù)據(jù)通過串行的方式,分別傳送到每一個74HC595芯片中,再內(nèi)部控制器儲存這些數(shù)據(jù),從而實現(xiàn)一層64個燈同時的點亮。
圖四所示時鐘信號電路設(shè)計,我們在XTAL1(單片機內(nèi)部振蕩電路的輸入端口)、XTAL2(單片機內(nèi)部振蕩電路的輸出端口)上接一個石英晶體并在兩端接兩個電容,這樣就可以產(chǎn)生一個內(nèi)部激蕩電路,這里需要注意的是此實驗用的晶振是12MHZ的,和晶振相連的電容一般選用33PF的陶瓷電容。
圖四對應(yīng)的PCB原理圖如圖五所示,由于光立方線路復(fù)雜,我們在布線過程中17根跳線(PCB圖中紅色和粉色線所示)
圖五 底座PCB圖
  • 程序控制光立方原理
本光立方的組成有兩各個部分一個是硬件一個則是軟件,軟件的伸縮性很大,編寫的好的程序?qū)崿F(xiàn)起來簡單不易出錯,編的不好的數(shù)據(jù)會出現(xiàn)很多問題,本系統(tǒng)采用的是模塊化的設(shè)計方案,減少軟件出錯的概率,在軟件的設(shè)計過程中需要用到了KEIL4軟件編輯器。
另外,我們寫程序時的設(shè)計思路是這樣的:描述一個固定畫面的顯示,需要硬件執(zhí)行8次掃描的過程。
  • 將第一層64個點的數(shù)據(jù)傳入8個74hc595中,控制uln2803層控制芯片打開第一層開關(guān),使第一層點亮,這個時候,其他層是滅的。
  • 等待時間t。
  • 熄滅第一層,開始向74hc595中傳輸?shù)诙䦟拥臄?shù)據(jù),鎖存,開啟第二層總控制開關(guān),點亮第二層。
  • 等待時間t。
.......
  • 熄滅第七層,將第八層的數(shù)據(jù)傳入所有74hc595中,鎖存,開啟第八層總開關(guān),
  • 點亮第八層。
  • 再回到第一步,循環(huán)下去....
這樣,便實現(xiàn)了一個偵畫面的顯示,由于人眼的視覺暫留的特性,只要刷新的夠快,我們看到的就是光立方整體一起點亮的。便實現(xiàn)了我們想要的效果。為了畫面的穩(wěn)定,上面間隔點亮t要保持一致,否則會出現(xiàn)亮度不均的情況。
光立方最大的特點就是點陣顯示,每個LED都是采用并聯(lián)方式焊接,所以通過編寫程序可以隨意設(shè)計點陣顯示方式,在本課題的光立方中,我們設(shè)計了倒計時數(shù)字顯示,波浪,左右推進等顯示方式。 下面是部分源程序展示。


完成了硬件和軟件設(shè)計,我們的光立方最后成功制作成功,展示結(jié)果如圖七所示。
圖七 光立方效果顯示實物圖



電路原理圖如下:


元件清單:


單片機源程序:


全部資料51hei下載地址:
程序_74HC595_test_OK.rar (74.56 KB, 下載次數(shù): 28)
基于STC單片機的光立方使用說明.docx (2.56 MB, 下載次數(shù): 16)
mt10光立方使用說明.pdf (1.7 MB, 下載次數(shù): 20)


評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:432841 發(fā)表于 2018-11-27 15:10 | 只看該作者
很詳細,學(xué)習(xí)了.
回復(fù)

使用道具 舉報

板凳
ID:675884 發(fā)表于 2020-7-7 19:29 | 只看該作者
有沒有層共陽的程序啊
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表