版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、基于STC12C5A60S2勺光立方設(shè)計【摘要】 本次設(shè)計使用512個LED燈制作8*8*8的LED立方體,命名為光立方。采用 STC12C5A60S芯片作為主控,8個74HC573鎖存器和一個 ULN2803芯片擴展I/O 口,作 為外圍控制。通過編程控制I/O 口,點亮指定的LED燈,使得顯示不同的畫面。8*8*8 光立方因點亮LED燈將會形成各種圖形,如愛心、數(shù)字、雨滴、正方體等十幾種畫面。 整個立體呈現(xiàn)不同的造型和圖案,動畫銜接完美,使其變得美輪美奐、絢麗多彩,立體 感十足。此外,我們還可以外接音頻輸入,通過 AD采樣,快速傅里葉變換FFT,可以讓 光立方顯示音頻頻譜。經(jīng)過系統(tǒng)測試,最
2、終達到設(shè)計要求?!娟P(guān)鍵詞】 光立方 STC12C5A60S2 74HC573 ULN2803Based on STC12C5A60S2 of the Light Cube Design【 Abstract 】 :The 8*8*8 LED cube is made of 512 LED lights , named Light Cube which used STC12C5A60Sa2s main control chip , it has 8 74HC573latches extended I/O ports,and a ULN2803 chip as out control. Throug
3、h programming control I/O port, the LED light. 8 * 8 * 8 cubic light for light leds will form a varietyof graphics, such as love heart,numbers,rain,cube and so on. animation, cohesion is perfect, stereo sense is dye-in-the-wood. In addition, we also can external audio input, through the ADsampling,
4、fast Fourier transform FFT, can let light cube display audio spectrum. After the system test, finally to meet the design requirements.【 Keywords】 : The Light Cube STC12C5A60S2 74HC573 ULN28031目錄【摘要】 1【 Abstract 】 1目 錄 2第一章 引言 11.1 光立方的研究意義 11.2 發(fā)展歷程和現(xiàn)狀 11.3 光立方的功能和特點 11.4 光立體的優(yōu)越性以及主要應用 2第二章 控制模塊設(shè)計 3
5、2.1 系統(tǒng)總框圖 32.2 總體方案的選擇 32.2.1 主控芯片 32.2 總體方案的選擇 32.2.1 主控芯片 32.2.2 電源選擇 42.2.3 元件選擇 4第三章 光立方顯示部分概述 73.1 光立方的制作 73.1.1 光立方的原理 73.1.2 LED 燈的選用 73.1.3 LED 燈的焊接 93.2 顯示部分檢測 10第四章 硬件設(shè)計 134.1 最小系統(tǒng) 134.2 按鍵模塊 134.3 功放模塊 144.3.1 功放原理圖 144.4 呼吸指示燈 154.5 豎排控制電路 154.6 光立方層控制電路 164.7 硬件電路焊接 174.8 元件清單 錯 誤!未定義書簽
6、。第五章 系統(tǒng)軟件設(shè)計 195.1 軟件設(shè)計總體思路 195.1.1 程序設(shè)計框圖 195.1.2 顯示程序設(shè)計 20圖 5-3 伸縮動畫流程圖 215.1.3 音頻信號頻譜分析 22第六章 系統(tǒng)調(diào)試與測試結(jié)果 246.1 軟件調(diào)試 246.2 光立方初步調(diào)試 256.2.1 檢查電源 256.3 光立方最終調(diào)試 266.4 光立方測試遇到的問題 26結(jié)論 27致謝語 28參考文獻 29附錄 30附錄 1:實物圖 30附錄 2:系統(tǒng)總原理圖 31附錄 3:呼吸燈 PCB 32附錄 4:光立方主程序 323第一章 引言本章簡要介紹了光立方的研究意義、發(fā)展和現(xiàn)狀,以及所設(shè)計光立方的功能特點,光立方
7、的優(yōu)越性,并依此提出了本論文研究的主要內(nèi)容。1.1 光立方的研究意義LED 點陣顯示屏已經(jīng)應用到了我們生活中的方方面面, 科技發(fā)展的腳步一直向前, 3D 電影給人帶來了震撼的視覺體驗, 于是想設(shè)計出一種 3D 顯示屏。通過學習單片機 原理與應用(第二版)一書,知道 LED 靜態(tài)顯示和動態(tài)顯示,以及兩種顯示的控制 方法。 LED 點陣顯示屏的特點有比數(shù)碼管實用、便宜、亮度高等優(yōu)點,而且做出來的 LED 顯示很耐用。具有亮度高、工作電壓低、功耗低、小型化、壽命長、耐沖擊和性能 穩(wěn)定等優(yōu)點。LED顯示屏發(fā)展前景極為廣闊,利用 LED做成3D顯示屏,3D LED顯示 不僅可以像 LED 點陣一樣顯示平
8、面動態(tài)或靜態(tài)圖案,同時還可以立體顯示動態(tài)或靜態(tài) 圖案,打破了傳統(tǒng)平面顯示的方式。更是給人不同視覺盛宴。1.2 發(fā)展歷程和現(xiàn)狀二十一世紀將是平板顯示的時代, 基礎(chǔ)材料產(chǎn)業(yè)化, 使 LED 燈生產(chǎn)工藝更加完善, 成本更低,應用加快發(fā)展。 LED 產(chǎn)品性能的提高,使全彩顯示屏的亮度、色彩、白平衡 均達到了比較理想的效果,完全可以滿足各種相對復雜的壞境條件要求。同時,由于全 彩色顯示屏價格性能比的優(yōu)勢,預計在未來幾年中的發(fā)展中,全彩 LED 3D 顯示屏在戶 外廣告媒體中越來越多的代替?zhèn)鹘y(tǒng)的磁翻板、燈箱、霓虹燈等產(chǎn)品,體育場館、舞臺的 顯示方面全彩 LED 3D 顯示屏更會成為主流產(chǎn)品 1。全彩色 L
9、ED 3D 顯示屏的廣泛應用會 是 LED 3D 顯示產(chǎn)業(yè)如發(fā)展的一個新的增長點。未來 LED 3D 顯示屏會向著規(guī)范化、標 準化、產(chǎn)品結(jié)構(gòu)多樣化等方向發(fā)展。目前,我國主要的 LED 廣告大屏幕制造廠商主要集中在華北、華東、華南區(qū)域, 大型制造商的市場范圍幾乎覆蓋了整個中國市場。國產(chǎn) LED 大屏幕性價比比較高,以 其獨有的優(yōu)勢占據(jù)了很大一部分市場份額。我國 LED 顯示屏產(chǎn)業(yè)的快速發(fā)展,逐步形 成了一批具有一定規(guī)模的骨干企業(yè),而且產(chǎn)品不斷推陳出新,使 LED 顯示屏產(chǎn)業(yè)成為 我國電子信息產(chǎn)業(yè)的重要組成部分, 也是平板顯示領(lǐng)域唯一立足國內(nèi)形成的民族高科技 產(chǎn)業(yè)。1.3 光立方的功能和特點1、8
10、*8*8的LED陣列立體顯示器。2 、連貫圖形顯示效果,渾然一體,一氣呵成,能給觀賞者帶來立體的可視的震撼 視覺效果。3、超炫的立體動態(tài)顯示,多種顯示樣式,如面平移、數(shù)字倒計時、方框伸縮、心 跳動、雨滴等十多種動畫。4 、具有音頻頻譜顯示模式,可隨音頻同步顯示,給觀賞者視覺和聽覺雙重體驗。5、全開放式用戶自定義操控,用戶可根據(jù)自己的喜好自行編寫對應的程序。6、光立方內(nèi)置兩種模式:圖形自動播放模式、音頻顯示模式, K2 選擇音頻模式, K3 選擇圖形自動播放模式。1.4 光立體的優(yōu)越性以及主要應用1. 3D 以其亮度高,功耗低,視角大,壽命長,可視距離遠等優(yōu)點而具有極為廣闊 的發(fā)展前景。隨著人們
11、生活水平的提高, 3D LED 逐漸應用于各行各業(yè)。人們對其的要 求也越來越高,已經(jīng)不再滿足于二維平面,進而轉(zhuǎn)向三維平面。 3D LED 的出現(xiàn)是一個 很好的契機。2. LED 光立體極具觀賞性,人們可以根據(jù)自己的要求,設(shè)計不同的圖案, 展現(xiàn) 不同的立體效果??梢哉f它是變幻無窮的。因其極大地觀賞性,使人們在接受信息,數(shù) 據(jù)的同時更加印象深刻,使信息的傳輸更有效率。隨著 3D 技術(shù)的逐步發(fā)展, 3D LED 被廣泛應用于現(xiàn)實生活中,比如 LED 顯示 屏,LED圖像,LED立體攝影。這些技術(shù)在我們的生活中隨處可見,電影院,會議場 合,舞臺設(shè)計,以及各種娛樂場所。1第二章控制模塊設(shè)計2.1系統(tǒng)總框
12、圖光立方系統(tǒng)主要框圖如圖2-1所示,主要包括主控部分、LED顯示部分、電源模塊、 功放模塊、以及呼吸指示燈模塊五部分。電源開關(guān)打開后,呼吸指示燈工作,系統(tǒng)初始 化完成后,等待選擇音頻顯示還是動畫自動播放模式,進入音頻模式后可伴隨音頻顯示 “跳舞”動畫。圖2-1圖系統(tǒng)方框圖2.2總體方案的選擇2.2.1主控光立方系統(tǒng)主要框圖如圖2-1,主要包括主控部分、LED顯示部分、電源模塊、 運放模塊、以及呼吸指示燈模塊五部分。整個系統(tǒng)又分軟件部分和硬件部分,良好的硬 件設(shè)計為軟件的執(zhí)行提供支撐,為系統(tǒng)工作提供硬件實體;軟件為系統(tǒng)的工作提供各種 算法,軟件與硬件的的結(jié)合,是系統(tǒng)高效工作的基礎(chǔ)。2.2總體方案
13、的選擇2.2.1主控芯片本次設(shè)計首先要實現(xiàn)光立方的立體掃描,產(chǎn)生出特定的顯示效果。通過設(shè)計多種多 樣的動態(tài)圖畫,給人一種絢麗多彩的效果。此外還要求顯示效果能依音樂節(jié)奏而跳動, 這就要求對音樂進行采集。對音樂采集可以采用獨立AD芯片,或者選用內(nèi)帶AD轉(zhuǎn)換功能的MCU為此,有三種選擇。選擇一:采用STC89C5單片機作為主控,獨立 AD0808或者AD0804芯片用做音頻采集。 選擇二:采用紅晶科技公司的 STC12C5A60S芯片作為主控。STC12C5A60S2芯片有以下幾個特點:(1)其和8051指令、管腳完全兼容。(2)片內(nèi)的具有大容量程序存儲器且是 FLASH工藝的。(3)低功耗設(shè)計,擦
14、寫次數(shù)10萬次以上。(4)自帶高達60K字節(jié)FLASHROM,這種工藝的存儲器用戶可以用電的方式瞬 間擦除、改寫,具有串口燒寫編程功能。(5)I/O 口驅(qū)動電流均可達到20mA,但整個芯片最大不得超過100mA。(6)另外同樣晶振的情況下,速度是普通51單片機的812倍,有8路10位ADC, 采樣速度可達到25萬次/秒,且超強抗干擾。選擇三:采用DSF芯片作為主控。DSP又叫數(shù)字信號處理器。顧名思義,DSP主要用于數(shù)字信號處理領(lǐng)域,非常適合 重復運算,高密度及大數(shù)據(jù)容量的信號處理2。現(xiàn)在已經(jīng)廣泛應用于通信、便攜式儀表、 便攜式計算機和雷達、圖像、家用電器、醫(yī)療設(shè)備等領(lǐng)域 3。其優(yōu)點有:(1)D
15、SP具有硬件乘法器以及特殊指令,依靠硬件乘法器單周期完成乘法運算。(2)具有專門的信號處理指令,相對于其他微處理器用軟件實現(xiàn)各種算法速度快 好多倍。(3)芯片內(nèi)置544字的高速SRAM通過分析以上三種方案,都有其各自優(yōu)點而且都可以實現(xiàn)控制過程。DSP的強大數(shù) 據(jù)處理能力和高運行速度,是最值得稱道的兩大特色,價格較高,本次設(shè)計也沒必要那 么高的處理速度。單片機的技術(shù)門檻較低,開發(fā)成本也較低。STC89C52芯片成本很低, 在處理速度上較STC12C5A60S2慢的多,容量也小,。同時為實現(xiàn)本次設(shè)計,還需外加 AD采集芯片,加大硬件設(shè)計難度。由于光立方的動畫效果和程序量比較大,而且要求 相對比較高
16、??紤]到價格,性能方面因素,最終選取處理速度較快、存儲較大且價格適 中的STC12C5A60S2芯片作為核心控制芯片。2.2.2電源選擇直接采用5V移動電源2.2.3元件選擇(1)由于燈的個數(shù)比較多,每層64個LED并聯(lián)共陰,這樣分流到每個LED的電流 會變得非常小,會造成無法點亮或者半亮,影響顯示效果。因此所需要的電流相對也比 較大,可以選擇ULN2003或者ULN2803,兩者都是反向輸出,輸出能力可達500mA /50V, 可用來做光立方共陰層驅(qū)動。但前者只能驅(qū)動七位,而后者可以驅(qū)動八位,所以選擇 ULN2803驅(qū)動。ULN2803是八重達林頓晶體管陣列,1腳至8腳為8路輸入,11到18
17、 腳為8路輸出,應用時9腳接地,要是驅(qū)動感性負載,10腳接負載電源V+。其內(nèi)部結(jié) 構(gòu)如圖2-2。其特點有:1、可直接驅(qū)動繼電器。3、可用于電平轉(zhuǎn)換。4、輸入的電平信號為高低電平(5V或0V),輸入低電平時,輸出達林頓管截止。 輸入為高電平時,輸出達林頓飽和。3圖2-2ULN2803內(nèi)部結(jié)構(gòu)(2)要做到光立方每一個 LED可以自由控制,就需要 64列共陽腳都要控制,而STC12C5A60S2單片機I/O顯然不夠,為了單片機送出下一組顯示數(shù)據(jù)時不會立刻丟掉 前一次顯示數(shù)據(jù)而造成圖像不完整,本人選用帶有數(shù)據(jù)鎖存功能的74HC573芯片,如圖2-3所示74HC引腳圖。八個鎖存器都是透明的 D型鎖存器,
18、當使能(G)為高電平 時,Q輸出將隨數(shù)據(jù)(D)輸入而變。當使能為低電平時,輸出將鎖存在已建立的數(shù)據(jù) 電平上。輸出控制不影響鎖存器的內(nèi)部工作,即老數(shù)據(jù)可以保持,甚至當輸出被關(guān)閉時, 新的數(shù)據(jù)也可以置入。特別適用于緩沖寄存器,I/O通道,雙向總線驅(qū)動器和工作寄存 器。對它的使用也比較成熟,因此在驅(qū)動部分使用了熟悉的74HC573,其控制邏輯如圖2-4所示。其優(yōu)點有:1.咼阻態(tài);就是輸出既不是咼電平,也不是低電平,而是咼阻抗的狀態(tài);在這種狀態(tài)下 可以多個芯片并聯(lián)輸出。2. 數(shù)據(jù)鎖存;當輸入的數(shù)據(jù)消失時,在芯片的輸出端,數(shù)據(jù)仍然保持。3. 數(shù)據(jù)緩沖;加強驅(qū)動能力。輸入輸出OE'LEDQLHHH
19、LHLLLLXQ0HXXZLE為鎖存控制端OE為使能端1腳三態(tài)允許控制端低電平有效1D8D為數(shù)據(jù)輸入端1Q8Q為數(shù)據(jù)輸出端01-!20乂一2ISD1-1802 -4t?D3-S61S0571406 fl13D7-g11NC 10tl圖2-3 74HC573引腳圖224光立方顯示電路的基本框圖LED光立方主要用到了 STC12C5A60S2單片機中的P0 口、P2 口、P3 口、串 行輸入輸出端以及外接晶體引線端 XTAL1和XTAL2。I/O 口分配如圖2-5所示。圖2-5 I/O 分配圖P0 口作為數(shù)據(jù)輸出端,單片機控制數(shù)據(jù)傳送到8個74HC573鎖存器的輸入端,而 8個74HC573鎖存器
20、輸出端分別控制一排8列LED陽極引腳。P2 口作為數(shù)據(jù)輸出端,單片機送出數(shù)據(jù)控制使能端而實現(xiàn)鎖存器的數(shù)據(jù)輸出與鎖 存,從而控制數(shù)據(jù)在某一時刻輸出到指定某一排或某幾排。P3 口作為數(shù)據(jù)輸出端,單片機內(nèi)部輸出控制數(shù)據(jù)傳送到 ULN2803的輸入端,進而 控制每一層。通過ULN2803數(shù)據(jù)沒有發(fā)生任何變化,只是電流前后有很大差別,這時 候電流將增大很多。5第三章光立方顯示部分概述3.1光立方的制作3.1.1光立方的原理借鑒LED點陣控制原理,將光立方可以看做是 8個8*8點陣屏的層疊一起。點陣屏 的顯示便是光立方一層的顯示,只要通過程序再次控制8個層,便可以實現(xiàn)光立方的顯示,由于人眼的視覺暫留,使我
21、們感覺到看到的東西是一起在亮的,這樣我們就可以看 到一個完整圖像,這是本次設(shè)計的基本原理。設(shè)計3D圖形,需要有新的思維方式,發(fā)現(xiàn)三維空間中點、線、面、體的算法規(guī)律。展示3D效果的超炫表現(xiàn)力,讓人享受各種視覺上的沖擊,迎合3D顯示時代的到來。光立方分解為 8個8*8LED點陣疊成8層,再 用8個引腳來充當8個點陣的開關(guān)。單片機PO、P2、P3實現(xiàn)控制XYZ空間立體控制來 顯示特定圖案。3.1.2 LED燈的選用本次設(shè)計旨在讓光立方動畫顯示更加絢麗多彩, 因此使用2*5*7霧狀散光扁方形 磨砂LED(紅、黃、藍三種),紅和黃分別三豎排,剩余兩排用藍色 LED這種燈型更 容易看到光點,以獲得更好的視
22、覺效果。額定電壓范圍 3.03.2v,額定電流1518mA管 腳長度27-29mm實物圖如圖3-1所示:圖3-1 LED實物圖首先,要進行LED燈立體矩陣的搭建。LED搭接過程還是比較困難的,8*8*8=512LED, 分為8層,每層8列,每列8個LED燈,列內(nèi)共陽,層內(nèi)共陰,如圖3-2所示。為使光 立方外形的美觀,每一片的LED陣列都要求排列整齊,互相看齊,這對焊接的能力有一 定的要求。圖3-2光立方焊接示意圖第一步:水平折彎。這個因為 LED本身管腳上有個結(jié),可以徒手完成。本次設(shè)計 是層內(nèi)共陰,同時為了視覺效果更好,本人將陰極管腳在水平方向折彎90°,并使之與 LED面垂直,如圖
23、3-3所示。同樣的方法,將512個LED燈的陰極都水平折彎。為了焊 接的統(tǒng)一性,在折彎的時候盡量保持角度一致。9圖3-3 LED水平折彎圖3-4 LED 垂直折彎第二步:垂直折彎。可利用尖嘴鉗將LED燈陽極管腳向外折一次再折回原來的方向, 如圖3-4所示。這個彎,一定不要太大,正好露出LED外圍2mm打彎合適,LED的正 極折彎后留下的引腳長度必須大于 LED的間距25.4mm,以確保有足夠的重合位置以便 焊接。LED燈上下之間焊接的時候就就會發(fā)現(xiàn)這一步是非常必要的。3.1.3 LED燈的焊接為了方便焊接,自制簡易模具,模具孔位間隔要提前量好,保證在管腳搭接時不要 太多或者不能焊接。然后按照單
24、獨 8豎排分別焊接,每一排8列,如圖3-5所示。接著 將折好的LED燈插入一列,其陰極管腳正好搭接在一起,完成焊接如圖 3-6和圖3-7。 在這里本人發(fā)現(xiàn)有非常值得注意的一點,因為LED比較脆弱,在焊接過程中很容易因為高溫而燒毀LED燈,對于這一點,應該盡量縮短電烙鐵接觸時間。同時為了確保每一個 LED都沒有問題,在完成一層后都要檢查是否可以點亮。圖3-6 LED焊接圖圖3-7 LED焊接圖3.2顯示部分檢測對于焊接完成的檢測這一步非常重要,如果安裝完成后再更換LED燈是非常麻煩的事。分別焊接完8豎排LED燈后,將每一豎排LED的都進行檢查,確保每一個LED都可 以點亮。這里本人直接在電腦 U
25、SB俞出口引出電源。這里值得注意一點,USB俞出電源最低3.3V(USB轉(zhuǎn)串口),最高5V左右(本人用數(shù)字萬用表測了一次是 5.16V)。而LED 燈壓降不超過3V,為了因電壓過高燒毀LED燈,在測試之前我們可以選擇了一個適中電 阻接在電源一端。(a)(b)(c)(d)圖3-8檢測過程接下來將電源正極接在第一列 LED陽極引腳,負極端依次觸碰各行陰極管腳,觀 察并記錄壞掉的LED,如圖3-8-1所示。然后將電源正極接到第二列,負極端依次觸碰 各行陰極管腳,如圖(a)、( b)、( c)、( d)用同樣的方法,將8豎排全部檢測完 成。最后將更換新的LED燈再檢查一遍。另外,還可以將一豎排同時點亮
26、的方式進行檢測,這樣做可能會出現(xiàn)某些LED燈因電流太小無法點亮出現(xiàn)誤判的情況。雖然逐個點亮這樣的檢測方式效率很慢,但可以有 效避免上述誤判現(xiàn)象,防止后期發(fā)現(xiàn)給更換帶來更大的不便。在一定程度來說,這樣做 也是在提高工作效率。圖3-9 LED立方體焊接最后將完成后的8個面進行組成立體焊接,其方法將之前8個面上同一層上陰極依 次焊接一起,形成層共陰,用8條細導線分別連接8個層與ULN2803輸出端相連。底 層留下64個陽極引腳與8個74HC573輸出端分別焊接一起。如圖3-9所示。13第四章硬件設(shè)計4.1最小系統(tǒng)單片機最小系統(tǒng)如圖4-1所示,包括時鐘電路和復位電路。時鐘電路用于產(chǎn)生單片 機工作時必須
27、的控制信號,單片機內(nèi)部電路正是在時鐘信號的控制下,嚴格按照時鐘時 序指令進行工作。復位電路是為了單片機初始化操作準備的,同時也是為了程序在執(zhí)行 過程中出現(xiàn)跑飛后快速重新啟動。最小系統(tǒng)STC12C5A60S2m1112131斗151617IBIS2D7Zb r=r 9ph .om pi.irrjEX P1i .2 P1I.3PI.4PI.5PI.6 P1I.7F?STP3.0RXDP3.irrxD FSJ/'iNTO 円所T P3.4/TO P3.5/T1 P3.6/5VR P3.7/REi XTAL2>>CTAL1GNDVCG PO Q/AQO PO.1ZAD1 PO 2Z
28、AD2 P0.3/AD3 PID.4/AD PO.SWDS P0.BWD6 P0.7XAD7 耳 ALE PSEN P2.7/A15 P2.6/A14 P2.5/A13 P2.A12 P2.aA1 1 P2.2/A1QF2.1/A9 F2.O/AS2勻口1:押2:-3?3-436斗£35耳C346孑33Tt323128css左了CS726匸鄂25CS524C:5423Cj2221112345G769 w-cl-om-elp15#圖4-1最小系統(tǒng)4.2按鍵模塊圖4-2系統(tǒng)按鍵K1為確定鍵。打開電源快關(guān)后,可根據(jù) K2和K3鍵選擇進入哪種模式,如圖4-2所示。如果按下K2按鍵,進入音頻頻
29、譜模式;按下 K3按鍵時,呼吸燈亮,此時按下K1確定鍵,進入程序執(zhí)行模式,開場動畫完成后會停留“ L”字界面,按下K2顯示“ E” 兩個字母分別代表模擬音頻動畫、自動執(zhí)行模式。4.3功放模塊本人使用手機耳機輸出音頻,因其輸出功率太小,單片機在有些頻段采集不到,所 以使用功放將其放大。另外外接喇叭,可以在播放音樂的同時體驗動感的視覺效果。這里我們采用專用功放芯片 LM386,這是專為低損耗電源所設(shè)計的功率放大器集成 電路。內(nèi)部機構(gòu)如圖4-3所示:増益設(shè)定一1 反向輸入二 正向輸入地 GW I0壇益設(shè)定旁路4電源-Vout鐵出圖4-3LM386引腳圖#4.3.1功放原理圖透過LM386的1和8腳位
30、間串聯(lián)電容,增益最高可達 200,電容。LM386可使用 電池為供應電源,無作動時僅消耗4mA電流,且失真低。功放原理圖如圖 4-4所示, TBL2為音頻接入口。U10首頻功敖毋!|卻-II.亡衛(wèi)rFTTLS1圖4-4功放電路圖在電路設(shè)計中,前端加一個22uF (沒有嚴格要求)的低頻濾波電容,以便濾除帶 外噪聲。#4.4呼吸指示燈采用555定時芯片,外接幾個電阻、電容,構(gòu)成電容充放電電路,實現(xiàn)LED緩慢亮滅,形象稱做呼吸燈。本人在光立方底座四角各焊接一個LED燈,在接通電源時呼吸燈閃爍,如夏日里的螢火蟲一閃一閃亮晶晶,作為電源指示燈,同時配合LED動畫顯示,使視覺效果趣味更佳。原理圖如圖 4-
31、5所示。圖4-5呼吸燈原理圖4.5豎排控制電路單片機P0 口同時輸出控制8個74HC573鎖存器輸入端,P2 口通過給8個74HC573 鎖存器11腳LE高低電平控制是否將數(shù)據(jù)輸出,8個C0N8分別代表8豎排LED燈。 通過編程控制P0和P2,從而控制數(shù)據(jù)在某一時刻輸出到指定某一排或某幾排。原理圖 如圖4-6圖一所示,具體連接電路4-6圖二所示。圖4-6豎排控制電路原理圖11E1.DVZDOdu3"D.卜-T-:-! r Ih - Le m v號.5、卜1卜F卜卜範矗詢=從圖二4.6光立方層控制電路前面介紹到利用74HC573來控制光立方的每排(即每一個豎面),但如何控制每一 豎面的
32、某一層就需要用到層控制芯片 ULN2803 了,P0 口輸出某層數(shù)據(jù)后,控制ULN2803 芯片選通該層,即可看到該層相應的點的 LED燈亮。因光立方層內(nèi)共陰,單片機輸出的電流信號特別小無法直接驅(qū)動大的負載,也就是不能同時驅(qū)動一層或多層LED燈。ULN2803用來功率放大的驅(qū)動芯片,所以可以用ULN2803來實現(xiàn)單片機與負載的連接。單片機P3 口輸出數(shù)據(jù)到ULN2803輸入端,經(jīng)過功 率放大后輸出控制8個LED層,這里CON代表LED8個共陰層,如圖4-7圖一所示,與LED燈鏈接電路如圖4-7圖二所示層握制電路1C至SS8C1234567B§§<3-0111圖一17圖
33、4-7光立方層控制電路ME M.umP3JVIC-I>fa.wT-r pgs/Sffi faaTWH i> 鼻 TQIKTIZ >)CTAU$11vfx FDDfABDPDSfADZ FClJrAiaPMADB- HUM DC FO-tfArrE7 啟LCP5H1 F2.TfAB- 畑環(huán)削. P3JHAT1PZJfAtl 怙辭>D FZ.V.O r?Cr磚4.7硬件電路焊接本次硬件焊接直接使用萬用板手工完成。采用標準 2.54mm間距布滿焊盤,可根據(jù) 電路結(jié)構(gòu)合理插裝元器件及連線的洞洞板。相比專業(yè)PCB制版,萬用板具有以下優(yōu)勢:價格低廉、使用方便,不像PCB板出現(xiàn)電路問
34、題時重新制版,另外比較擴展靈活。在焊接洞洞板之前需要準備足夠的細導線用于走線。本人將硬件部分焊接分上下兩層,上層分布8個74HC573和一個ULN2803以及64個LED陣列插孔,下層安裝單片機、按 鍵、呼吸燈模塊以及I/O 口引出排插。每一層分正反兩面,正面元件,背面走線。圖4-9 主控布局圖4-10主控走線焊接在萬用板正面安裝元器件,按照原理圖,合理擺放元件,同時將模塊電路部分放 在一起,不要太過凌亂,如圖4-9所示。盡量使整體布局美觀,布線方便而且有利于在 后期檢查。主控部分線路可以實現(xiàn)無交叉分布,所以可以直接用焊錫鏈接焊盤完成走線,如圖4-10所示。最后在四角分別焊接一個貼片式LED燈
35、,做呼吸燈,用來電源指示。圖 4-1174HC573 焊接圖4-12光立方組裝8個74HC573鎖存器分別對應LED燈陣列的8豎排,因此在芯片安插的時候按照 一定順序擺放,如圖4-11所示。細導線質(zhì)地柔軟,焊接后顯得較為雜亂,所以焊接完 成每一條走線的時候用萬用表測試是否斷路。最后為防止多次檢查而弄斷走線,可以用 熱熔膠適當固定一下。焊接完成后將上下兩層用四根銅柱固定。通過四個銅柱卡位,可 以使排插和排針正好鑲接在一起,這樣做的好處就是方便拆卸,能夠后期檢查以及功能 擴展,如圖4-12所示。另外,在這里值得指出的一個亮點是,本人在LED電源附近加了一個104瓷片電容,如圖4-9所示。因為硬件焊
36、接完成后,檢查硬件電路無誤后,安裝LED燈陣列,通過不斷測試發(fā)現(xiàn)光立方會全亮或者不亮。無意想起玩具小車電路上在電源上加了電 容,本人試了一下,結(jié)果動畫才可以完美顯示了。通過上網(wǎng)查資料才知道,平時所用電 腦USB接口或者移動電源并不是很穩(wěn)定,容易因為形成干擾。連接電容,主要用于降 低電源內(nèi)阻,改善電源帶動負載的能力,濾除低頻干擾等。19第五章系統(tǒng)軟件設(shè)計5.1軟件設(shè)計總體思路本次光立方設(shè)計中,要求通過軟件編程控制PO、P2和P3 口各個位高低實現(xiàn)對每 一個LED燈的亮滅控制,在程序中運用for或while循環(huán)、if語句、帶參函數(shù)等方法, 用最少的語句達到最佳的顯示效果。為了能夠增強顯示效果吸引觀
37、眾眼球,可以選擇編 寫多種顯示模式。最簡單的顯示模式是靜態(tài)顯示。與靜態(tài)顯示模式相對應,就有動態(tài)顯 示模式,它們所顯示的圖文都是能夠變化的。按照圖文運動的特點又可以分為雨滴、翻 轉(zhuǎn)、旋轉(zhuǎn)、縮放等多種顯示模式,這就需要建立各種動畫代碼數(shù)組。但是為了顯示很多 種不同動畫,并不意味著一定要重新編寫顯示數(shù)據(jù),可以通過一定的算法從原來的顯示 數(shù)據(jù)直接生成,這樣程序編寫就不會過于繁瑣和重復。5.1.1程序設(shè)計框圖光立方程序設(shè)計主要是控制 PO、P2、P3 口通過高低電平組合,不同時刻點亮不同 LED,在這里就需要考慮數(shù)據(jù)刷新率的問題。我們知道當顯示器播放速率大于15幀的動畫,才會在人眼中形成流暢的效果,為此
38、就需要一個準確的時間基準來一次點亮光立 方的每一層,這個值有單片機定時器設(shè)置,同時很可能還需要其他數(shù)據(jù)的采集和處理, 所以也應該使用多種中斷。分析系統(tǒng)該具有哪些功能,應該編寫那些子函數(shù),各個模塊之間是如何調(diào)用。本次 程序設(shè)計分三大模塊,第一部分是部分建立多種動畫和數(shù)字代碼數(shù)組;第二部分編寫兩 種模式執(zhí)行算法,調(diào)用建立好的動畫代碼庫;第三步部主程序,用于掃描按鍵進入哪種 工作模式,F(xiàn)FT()函數(shù)和Dis()。然后編譯下載到硬件并依據(jù)測試結(jié)果找出程序中的錯誤, 改正這些錯誤至測試成功。C開始J系統(tǒng)初始化*按鍵掃描略音頻頻譜動畫鍵盤掃描專開始動畫播放19結(jié)束圖5-1系統(tǒng)主程序流程圖本次設(shè)計米用Kei
39、l4軟件編寫C語言程序,C語言簡潔靈活、通俗易懂、兼容性 高、編譯方便快捷。并且將整個程序分成多個子函數(shù),例如單片機初始化、主程序、按 鍵掃描、顯示程序四部分進行編寫。初始化過程包括中斷初始化、中斷優(yōu)先級配置、定 時器配置、AD初始化。在編寫程序時,為了方便多次調(diào)試,首先可以將每個子程序編 寫成一個可以獨立執(zhí)行的完整程序,編譯沒有錯誤后下載到單片機進行驗證。各個子程 序都測試成功后整合成一個綜合程序,編譯完成后,再次下載到單片機進行整體測試。5.1.2顯示程序設(shè)計顯示程序本人主要建立多個動畫數(shù)組,這個可以用已有的取模軟件提取動畫代 碼,同時也要自己編一些個性動畫代碼。采用動態(tài)掃描方式調(diào)用顯示函
40、數(shù)。所謂動態(tài)掃 描顯示就是一個完整的畫面分成好幾幀顯示,每一時刻只顯示畫面的一幀,如果顯示間 隔很小,人眼的視覺無法分辨,利用人眼暫留原理,就可以看到一幅完整圖像。一、自動播放動畫流程圖menu是K1按鍵,通過K1按下次數(shù)選擇執(zhí)行不同動畫模式,程序見附錄四中模塊一。圖5-2 自動播放模式流程圖1.1動畫一:面平移流程圖光立方動畫顯示,就必須不斷在每個完整圖像顯示后延時一會, 再次刷入新的數(shù)據(jù), 不斷刷新不同圖像數(shù)據(jù),就可以看到圖像動起來了。圖像之間切換速度很快,在人們眼 中顯示的效果便是流暢的動畫。系統(tǒng)初始化顯示數(shù)據(jù)送P01TP2選通列,鎖存器輸出選通數(shù)據(jù)左移V移次r顯示完成子程序返回圖5-2
41、面平移顯示流程圖1.2動畫二:方框伸縮動畫流程圖如 5-3所示,程序見附錄四中子模塊二 go:上次動畫執(zhí)行結(jié)束標記 go=1,否則go=0。圖5-3伸縮動畫流程圖至此,其他動畫流程圖就不再一一列舉了5.1.3音頻信號頻譜分析FFT是根據(jù)離散傅氏變換的奇、偶、虛、實等特性,對離散傅立葉變換的算法進行改 進獲得的。它對傅氏變換的理論并沒有新的發(fā)現(xiàn),但是對于在計算機系統(tǒng)或者說數(shù)字系 統(tǒng)中應用離散傅立葉變換,可以說是進了一大步。設(shè)x(n)為N項的復數(shù)序列,由DFT變換,任一 X( m的計算都需要N次復數(shù)乘法 和N-1次復數(shù)加法,而一次復數(shù)乘法等于四次實數(shù)乘法和兩次實數(shù)加法,一次復數(shù)加法 等于兩次實數(shù)加
42、法,即使把一次復數(shù)乘法和一次復數(shù)加法定義成一次“運算”(四次實 數(shù)乘法和四次實數(shù)加法),那么求出N項復數(shù)序列的X( m ,即N點DFT變換大約就需要NT次運算。當N=1024點甚至更多的時候,需要 N2=1048576次運算,在FFT中,禾U 用WN的周期性和對稱性,把一個 N項序列(設(shè)N=2k,k為正整數(shù)),分為兩個N/2項的 子序列,每個N/2點DFT變換需要(N/2) 2次運算,再用N次運算把兩個N/2點的DFT 變換組合成一個N點的DFT變換。這樣變換以后,總的運算次數(shù)就變成N+2*( N/2F2=N+(NA2) /2,轉(zhuǎn)換過程如圖5-3所示圖 5-3 N=8 DFT-FFT首先,我們
43、用ADC去采樣一個模擬信號之后,使之變?yōu)閿?shù)字信號。若我們N個采樣 點,經(jīng)過FFT運算之后,就可以得到N個點的FFT結(jié)果。但通常為了方便進行 FFT運 算常N取2的整數(shù)次方。而本次光立方設(shè)計可以采集 16便可以滿足要求,由于FFT結(jié) 果的對稱性,通常只使用前 N/2個采樣點的結(jié)果?;?-FFT算法是倒位序存儲,但算法完成后結(jié)果按正序輸出,將原始采樣數(shù)據(jù)放在 數(shù)組tab16中,tab0存放第一次讀取的AD轉(zhuǎn)換數(shù)據(jù),tab1存放第二次讀取的AD轉(zhuǎn) 換值,一次類推,完成16次轉(zhuǎn)換呢值得存放,倒敘輸出存放在tab116數(shù)組中,F(xiàn)FT算 法如下:X (k) =X'( k) +X'( k+b
44、) W/ (1)X(k+b) =X'( k) -X '(k+b) W (2)式中,WNP=cos (2n P/N) -j sin (2n P/N)。 將式(1)化簡成實部和虛部的形式,得到:X. (k) =X/( k) +Xr'( k+b) cos (2n P/N) +X'( k+b) sin (2n P/N)( 3)X (k) =X'(k) -Xr'( k+b) sin (2n P/N) +X'( k+b) cos (2n P/N)(4) 同理,式(2)化簡得到:X (k+b) =Xr'( k) -Xr'( k+b) c
45、os (2n P/N) -Xi'( k+b) sin (2n P/N)( 5)X (k+b) =XI'( k) +X/(k+b) sin (2n P/N) -Xi'(k+b) cos (2n P/N)(6)可見每個蝶形運算的輸出都是由其輸入值與某一正弦函數(shù)和余弦函數(shù)的乘積累加LED點陣,點亮得到的。經(jīng)過FFT變換,然后取某些頻率項的幅值,量化顯示,驅(qū)動 相應的LED燈。流程圖如圖5-4所示,程序見附錄四中模塊三。23第六章系統(tǒng)調(diào)試與測試結(jié)果一個完整的電子設(shè)計,無論模塊設(shè)計如何精確,最終整體系統(tǒng)都要進行不斷的測試 和調(diào)試。在本次光立方設(shè)計中,先進行軟件部分調(diào)試,最后將程序
46、下載到單片機進行整 體調(diào)試。軟件部分調(diào)試主要將編寫好的 C語言程序編譯產(chǎn)生單片機可讀取的.HEX二進 制文件;整機調(diào)試主要是看編寫程序端口控制與硬件設(shè)計是否匹配,顯示結(jié)果是否按程 序設(shè)計執(zhí)行。6.1軟件調(diào)試首先本人編寫一段簡單程序,要求實現(xiàn)點亮全部LED燈,以及可以通過按鍵選擇顯示“ U”形字樣。只要P0 口 8位全部輸出高電平,P3同樣輸出高電平(ULN2803是 電平轉(zhuǎn)換功能),也就是語句P0=0xff; P3=0xff;就可以實現(xiàn)光立方的全部點亮。而輸出圖6-1 U型分解圖LJ打見總盪毫:ft個手看圖6-2測試程序調(diào)試程序編譯成功產(chǎn)生.hex文件,結(jié)果如圖6-2所示。本人此次編寫這段簡短
47、程序有 兩個目的。第一:編程點亮所有LED燈,可以用軟件控制方法再次檢查是否有壞掉的LED燈。第二:通過編程“ U”字樣程序控制,檢查顯示是否按程序設(shè)計執(zhí)行,同時可以確定 I/O 口高低位分別對應控制的行與列,可以避免編程所顯示的圖像都是倒立的或者不是 所要設(shè)計的畫面。6.2光立方初步調(diào)試6.2.1檢查電源用5V移動電源用于單片機,功放模塊供電,并接到主控扳上,檢查電源指示燈是 否閃爍,單片機能否正常工作。將編譯好的程序下載到單片機進行整體檢測-*倬亦Mil" 圖6-4 LED全亮圖6-5“ U'型字樣下載完成后,打開電源,通過按鍵 K2,發(fā)現(xiàn)有一列燈沒有亮,由于光立方每一層
48、 共陰,每一列LED共陽接法,根據(jù)此原理本人檢查發(fā)現(xiàn)接頭沒有插好,重新插緊,問題 解決了,顯示效果如圖6-4所示,接著按下K3可以看到顯“ U'型字樣,可能由于點亮排數(shù)太少,或者拍攝角度不對造成顯示效果不是太好,如圖6-5所示??傊敬螠y試基本符合要求。6.3光立方最終調(diào)試經(jīng)初步測試無誤后,開始編寫光立方整程序。為了便于后期方便讀懂程序以及再次 填加某些動畫,本人將程序分三部分編寫,分別是主程序,音頻采集與現(xiàn)實模塊,動畫 自動播放模塊。主程序主要實現(xiàn)鍵盤掃描并確定執(zhí)行哪種模式現(xiàn)實。經(jīng)過多次編譯、修 改,程序編譯結(jié)果如圖6-6所示。曲“込I =jJKSk737怎 IU 竺.圖6-6完整程
49、序編譯結(jié)果Tl W771=圖6-7 顯示效果將完成編譯程序下載到單片機上,可以發(fā)現(xiàn)還是有很多問題的。比如延時太慢造成 的圖像顯示亮度不均勻,如圖6-7所示?;蛘邉赢嬨暯硬贿B貫,出現(xiàn)不適宜的停頓。6.4光立方測試遇到的問題(1)發(fā)現(xiàn)動畫顯示一段時間后跳出到開始界面,為此糾結(jié)很長時間,但最后發(fā)現(xiàn) 用的電源(USB)電流不穩(wěn)定,后來換用5V移動電源供電,光立方正常運行程序顯示 動畫。(2)光立方正常運行時發(fā)現(xiàn)頂層 LED燈亮度與其他各層不同。以為驅(qū)動電路有問題,就把8個74HC573芯片仔細檢查一遍,發(fā)現(xiàn)驅(qū)動模塊工作正常,最后檢查LED焊接發(fā)現(xiàn)頂層陰極斷路。問題解決后,亮度一致,光立方動畫顯示正常。
50、(3)光立方動畫顯示不連貫,有明顯停頓,造成這樣顯示一般是延時過長。通過改 小延時函數(shù)參數(shù),動畫完美顯示。結(jié)論本次光立方設(shè)計主要通過單片機控制 512個 LED 燈的自由點亮,從而可以實現(xiàn)各種 動畫顯示,在設(shè)計過程期間出現(xiàn)很多錯誤,都被及的發(fā)現(xiàn)并改正。(1)下載程序檢測時發(fā)現(xiàn)圖案不完整,檢查程序后發(fā)現(xiàn),原來是在送完P(guān)0 口數(shù)據(jù)后,就立馬加了個延時,再送 P2 口數(shù)據(jù),再延時,這樣導致 P0 口與P2 口之間的顯示 效果在視覺上慢了半拍,達不到預期圖案要顯示的效果,最后將中間的那個延時程序調(diào) 到送完P(guān)2 口數(shù)據(jù)之后再給其進行延時,通過調(diào)試發(fā)現(xiàn)能夠正常顯示。(2)在編寫各種圖案顯示代碼的時候,讓我
51、深刻的體會到,要想編好相應的代碼, 雖然可以配合取模軟件,但光立方的三維空間的想象能力還是比較重要, 512 個燈到底 是要求哪個燈給高電平哪個燈給低電平,還要根據(jù)顯示要求組合好。以防出現(xiàn)亂碼顯示 情況。( 3)本次設(shè)計硬件部分相對簡單, 主要是動畫編寫, 因此熟練應用定時器、 中斷等 編程方式,可以大大減少程序冗余。(4)在做音頻頻譜過程中, 由于不會實時處理漂浮點下落速度, 從而使頻譜顯示顯 示變化高度一致,沒有達到想要的顯示效果,這也是本次設(shè)計的一個不足之處。27致謝語接近半年的畢業(yè)設(shè)計結(jié)束了,在這段時間的設(shè)計和學習過程中,我得到了很多人的 幫助,學到了很多東西,由衷的感謝一直以來關(guān)心和
52、幫助我的老師與同學。首先,感謝我的指導老師任志山和其他指導過我的老師們。 在選定設(shè)計課題的時候, 任老師給我們每個同學分析近幾年的發(fā)展趨勢,引出了以“實用”、“創(chuàng)新”為特色的 設(shè)計要求,并給我們每個指出了設(shè)計課題的大方向。在設(shè)計過程中,老師以自己精專的 知識,不斷地啟發(fā)我,使我的設(shè)計得以順利進行。有了老師們的監(jiān)督和指導,讓我很好 地把所學的專業(yè)知識得以應用,在實踐中再次提高。而且大大培養(yǎng)了自己的動手能力, 這對我以后的工作會有很大的幫助。另外,每個畢業(yè)的學生都要面臨畢業(yè)論文的問題, 一個優(yōu)秀的設(shè)計論文,需要注意的細節(jié)很多,而學生很難一次性做到位。比如在寫論文 時,存在論文布局、內(nèi)容、格式等方面的問題,老師給我一一講解與修改,花費了老師 的很多時間,任老師以其淵博的學識、嚴謹?shù)闹螌W態(tài)度、敏捷的思維、求實的工作作風 以及飽滿的工作熱情給我留下了深刻的影響,是我終生學習的榜樣。在這里我特別謝謝 我的指導老師任志山。再次,我要感謝同學對我?guī)椭椭笇?,在設(shè)計中不懂的請教同學時,總是很熱心的 幫我發(fā)現(xiàn)問題,尋找更好的解決辦法。最后,祝你們身體健康 , 工作順利。29參考文獻1單片機、DSR PLD EDA的介紹、比較和分析山西電子技術(shù) 王海林王瑋2004年2新概念51單片機C語言教程M電子工業(yè)出版社郭
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年申扎縣招教考試備考題庫附答案解析(奪冠)
- 2025年嵐皋縣招教考試備考題庫附答案解析
- 2025年上饒職業(yè)技術(shù)學院單招職業(yè)技能考試模擬測試卷帶答案解析
- 2024年羅田縣招教考試備考題庫及答案解析(必刷)
- 2024年竹山縣幼兒園教師招教考試備考題庫含答案解析(奪冠)
- 2025年湖南人文科技學院馬克思主義基本原理概論期末考試模擬題附答案解析
- 2025年廣東文藝職業(yè)學院馬克思主義基本原理概論期末考試模擬題附答案解析(必刷)
- 2025年云縣幼兒園教師招教考試備考題庫附答案解析(奪冠)
- 2025年新星職業(yè)技術(shù)學院單招職業(yè)傾向性測試題庫帶答案解析
- 2025年江西制造職業(yè)技術(shù)學院馬克思主義基本原理概論期末考試模擬題含答案解析(必刷)
- 起重機械安全風險辨識報告
- 2025年山東省村級后備干部選拔考試題(含答案)
- 村社長考核管理辦法
- 兒童顱咽管瘤臨床特征與術(shù)后復發(fā)風險的深度剖析-基于151例病例研究
- 防潮墻面涂裝服務合同協(xié)議
- GB/T 15237-2025術(shù)語工作及術(shù)語科學詞匯
- 外賣跑腿管理制度
- 冷鏈物流配送合作協(xié)議
- 生物-江蘇省蘇州市2024-2025學年第一學期學業(yè)質(zhì)量陽光指標調(diào)研卷暨高二上學期期末考試試題和答案
- 2024年人教版一年級數(shù)學下冊教學計劃范文(33篇)
- 成都隨遷子女勞動合同的要求
評論
0/150
提交評論