基于51單片機(jī)的光立方設(shè)計(jì)_第1頁(yè)
基于51單片機(jī)的光立方設(shè)計(jì)_第2頁(yè)
基于51單片機(jī)的光立方設(shè)計(jì)_第3頁(yè)
基于51單片機(jī)的光立方設(shè)計(jì)_第4頁(yè)
基于51單片機(jī)的光立方設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

畢業(yè)設(shè)計(jì)基于51單片機(jī)的光立方設(shè)計(jì)姓 名: 梁泉明 學(xué) 號(hào): 10030005 班 級(jí): 10信科一班 專(zhuān) 業(yè): 信息科學(xué)與技術(shù) 所在系: 電子信息工程系 指導(dǎo)教師: 郝蕓 基于51單片機(jī)的光立方設(shè)計(jì)摘要 本文詳細(xì)的介紹了光立方的搭建過(guò)程,以51系列的單片機(jī)STC12C5A60S2為主要的控制芯片,由512個(gè)LED通過(guò)共陰的形式連接起來(lái),由74HC595為擴(kuò)展單片機(jī)的I/O口,用ULN2803為驅(qū)動(dòng)電路,形成一個(gè)規(guī)格為8*8*8(長(zhǎng),寬,高)14cm*14cm*20cm立方體,還介紹了這款芯片的特點(diǎn)和使用方法及在調(diào)試過(guò)程中遇到的軟件和硬件方面的問(wèn)題及解決方法,詳細(xì)的闡述了光立方的設(shè)計(jì)原理和架構(gòu)方法,對(duì)光立方目前存在的意義也進(jìn)行了詳細(xì)的介紹。關(guān)鍵詞:光立方;74HC595;單片機(jī);ULN2803;LEDLight CuBe Based on 51 single ChiP miCroComPuterABstraCt本文詳細(xì)的介紹了光立方的搭建過(guò)程,以51系列的單片機(jī)STC12C5A60S2為主要的控制芯片,由512個(gè)led通過(guò)共陰的形式連接起來(lái),由74hc595d為擴(kuò)展單片機(jī)的I/O口,用uln2803為驅(qū)動(dòng)電路,形成一個(gè)規(guī)格為8*8*8(長(zhǎng),寬,高)14cm*14cm*20cm立方體,還介紹了這款芯片的特點(diǎn)和使用方法及在調(diào)試過(guò)程中遇到的軟件和硬件方面的問(wèn)題及解決方法,詳細(xì)的闡述了光立方的設(shè)計(jì)原理和架構(gòu)方法,對(duì)光立方目前存在的意義也進(jìn)行了詳細(xì)的介紹。This PaPer introduCes the ProCess of Building Light CuBe, with 51 Series MCU STC12C5A60S2 as the main Control ChiP, ConneCted By 512 LED By CO Yin form, By 74HC595 for the exPansion of the MCU I/O Port, using ULN2803 as the drive CirCuit, the formation of a sPeCifiCation for 8*8* 8 (length, width, height) the 14Cm*14Cm*20Cm CuBe, also introduCes the CharaCteristiCs and methods of use of the ChiP and software and hardware in the ProCess of deBugging ProBlems and solutions, desCriBed in detail the design PrinCiPle and arChiteCture method Light CuBe, the CuBe existed at Present signifiCanCe have also Been introduCed in detail.關(guān)鍵詞:光立方;74HC595D;STC12C5A60S2單片機(jī);uln2803;ledKeywords: Light CuBe; 74HC595; STC12C5A60S2; ULN2803; LED目錄摘要2關(guān)鍵詞21.1課題研究的背景61.2課題研究的意義61.3課題研究?jī)?nèi)容和結(jié)構(gòu)6第二章 總體設(shè)計(jì)72.1 系統(tǒng)的工作原理72.2 各模塊方案選擇72.2.1 單片機(jī)主控制模塊72.2.2 驅(qū)動(dòng)模塊82.2.3 顯示模塊8第三章 系統(tǒng)硬件電路設(shè)計(jì)與實(shí)現(xiàn)83.1 硬件電路設(shè)計(jì)83.2 單片機(jī)最小系統(tǒng)93.2.1時(shí)鐘電路93.2.2 P0 口外接上拉電阻103.3驅(qū)動(dòng)模塊的設(shè)計(jì)113.4 光立方整體設(shè)計(jì)思路123.4.1 LED燈排序方式設(shè)計(jì)123.4.2 LED燈接法方式設(shè)計(jì)133.5光立方搭建方法133.5.1將LED從點(diǎn)到線的搭建133.5.2將LED從線到面的搭建143.5.3將LED從面到體的搭建153.6 PCB板的焊接153.6.1 PCB板的制作153.6.2 主板的焊接163.6.3主芯片的焊接163.6.4開(kāi)關(guān)及按鍵的焊接163.6.4排插及晶振的焊接17第四章 軟件設(shè)計(jì)184.1 主程序的設(shè)計(jì)184.2 顯示程序的設(shè)計(jì)194.2.1顯示模塊的原理194.2.2 顯示程序的設(shè)計(jì)194.3 軟件調(diào)試20第五章 成品測(cè)試和問(wèn)題分析215.1 成品測(cè)試215.1.1. 硬件調(diào)試215.1.2. 軟件系統(tǒng)225.2 結(jié)果分析22第六章 結(jié)論23參考文獻(xiàn)24致謝語(yǔ)25附錄25程序清單27第一章 緒論 1.1課題研究的背景 “光立方”是一種基于娛樂(lè)和學(xué)習(xí)為一體的科學(xué)制作,光立方的娛樂(lè)體現(xiàn)在其開(kāi)放性的DIY程序改造和立體的動(dòng)畫(huà)表現(xiàn)形式,可以隨心所欲的變化程序來(lái)實(shí)現(xiàn)想要的動(dòng)畫(huà)效果。光立方的學(xué)習(xí)價(jià)值體現(xiàn)在對(duì)單片機(jī)的控制操作和對(duì)512個(gè)LED燈的點(diǎn)陣控制及對(duì)個(gè)模塊功能的協(xié)調(diào)配合上,隨著近年來(lái)電子行業(yè)的飛速發(fā)展,越來(lái)越多的電子愛(ài)好者對(duì)于光立方產(chǎn)生了很濃厚的興趣,光立方創(chuàng)造出的浪漫氣氛和絢麗畫(huà)面,使它在很多場(chǎng)合作為一種生日禮物或者是示愛(ài)的工具,大多數(shù)的專(zhuān)業(yè)人士把光立方研究做為一種職業(yè),光立方技術(shù)也逐漸的變得成熟,不僅具有了學(xué)習(xí)價(jià)值還具備了商業(yè)價(jià)值,因?yàn)槠涞牧Ⅲw渲染效果也使的它是個(gè)很好的廣告宣傳工具,諸多好處也使得光立方越來(lái)越受人追捧,大家都在光立方原有的基礎(chǔ)上創(chuàng)新改進(jìn),其創(chuàng)造出的經(jīng)濟(jì)價(jià)值和娛樂(lè)價(jià)值已遠(yuǎn)遠(yuǎn)超過(guò)單純的LED點(diǎn)陣顯示,這也再一次深深的吸引了電子愛(ài)好者對(duì)其研究和創(chuàng)新。1.2課題研究的意義這次畢業(yè)課題的設(shè)計(jì)拋棄了傳統(tǒng)LED的二維顯示,改為了點(diǎn)陣的三維立體顯示,顯示的更加絢麗多彩,強(qiáng)烈沖擊了人們的視覺(jué),傳統(tǒng)的光立方用的是簡(jiǎn)單的單片機(jī),因?yàn)槠湫阅苤萍s使得其立體效果和動(dòng)畫(huà)效果不是很流暢,本次運(yùn)用了性能最優(yōu)秀的單片機(jī)STC12C5A60S2替代89C51,從而使系統(tǒng)的功能變得更加強(qiáng)大驅(qū)動(dòng)能力更強(qiáng),在動(dòng)畫(huà)的顯示上更加的流暢和逼真,此外,傳統(tǒng)的光立方的布局和排線太過(guò)復(fù)雜,DIY程序特別單一,硬件和軟件的穩(wěn)定性都非常的差,運(yùn)行時(shí)存在的問(wèn)題太多,焊接費(fèi)時(shí)費(fèi)力存在靜電危害,在這個(gè)設(shè)計(jì)中我們很好的處理了這些問(wèn)題,避免了很多問(wèn)題的出現(xiàn),畫(huà)面非常自然流暢,此次的制作和設(shè)計(jì)對(duì)智能化產(chǎn)品實(shí)現(xiàn)經(jīng)濟(jì)和商業(yè)的價(jià)值具有積極地作用。1.3課題研究?jī)?nèi)容和結(jié)構(gòu)本文主要模塊如下:STC單片機(jī)控制模塊: 以STC12C5A60S2單片機(jī)為控制的核心,再加上輔助電路;時(shí)鐘信號(hào)產(chǎn)生模塊:用24MHZ的石英晶體作為整個(gè)系統(tǒng)的晶振發(fā)生器,給電路提供時(shí)鐘信號(hào);立體的顯示模塊:通過(guò)對(duì)單片機(jī)輸入不同的代碼使其通過(guò)控制LED的亮暗達(dá)到顯示的作用;本文的結(jié)構(gòu)安排如下:第二章:主要敘述了系統(tǒng)的工作原理和結(jié)構(gòu)特點(diǎn),對(duì)不同方案的選擇和優(yōu)化,對(duì)各個(gè)模塊的詳細(xì)介紹。第三章:詳細(xì)說(shuō)明了各個(gè)硬件電路的排布和設(shè)計(jì),并且說(shuō)明了各個(gè)部分的作用和芯片引腳功能的分布和使用規(guī)則,此外還闡述了整個(gè)系統(tǒng)的設(shè)計(jì)思路和搭建的過(guò)程及過(guò)程中注意的問(wèn)題。第4章 :介紹了軟件調(diào)試的過(guò)程及遇到的問(wèn)題,軟件系統(tǒng)的整個(gè)架構(gòu)和邏輯關(guān)系。第5章 :講述了整個(gè)光立方在后期調(diào)試中的軟硬件問(wèn)題和解決這些問(wèn)題的方法。 第六章:主要敘述了在光立方制作和設(shè)計(jì)過(guò)程中遇到什么困難和如何解決,并在此次設(shè)計(jì)中的心得體會(huì)和得到什么收獲。第二章 總體設(shè)計(jì)2.1 系統(tǒng)的工作原理本系統(tǒng)設(shè)計(jì)主要以STC12C5A60S2單片機(jī)為核心,并以512個(gè)藍(lán)色LED燈做為顯示模塊組成的光立方,主要有主控模塊、驅(qū)動(dòng)模塊、顯示模塊構(gòu)成,系統(tǒng)模塊框圖如圖2-1: 圖2-1 系統(tǒng)結(jié)構(gòu)框圖2.2 各模塊方案選擇2.2.1 單片機(jī)主控制模塊方案一:采用傳統(tǒng)的89C51單片機(jī)作為主控制芯片,應(yīng)為89C51單片機(jī)內(nèi)部只有8K的存儲(chǔ)空間,立體的光立方實(shí)現(xiàn)的功能比較復(fù)雜,一個(gè)單片機(jī)要控制512個(gè)燈所以程序代碼存儲(chǔ)空間可能大于8K有可能會(huì)溢出,所以不可采用此方案。方案二:采用與89C51有相同功能的STC12C5A60S2單片機(jī),此單片機(jī)具有60K的存儲(chǔ)空間,足夠應(yīng)付光立方復(fù)雜的圖像顯示程序代碼存儲(chǔ),此單片機(jī)還有運(yùn)行速度快,加密安全,抗干擾能力強(qiáng),內(nèi)部還有集成復(fù)位電路等特點(diǎn),比較適合此設(shè)計(jì)的要求,所以可采用此方案。2.2.2 驅(qū)動(dòng)模塊方案一:采用八個(gè)8050NPN三極管雖然可以起到反向的作用可是數(shù)量過(guò)多,從布線和三級(jí)管排布的美觀上感覺(jué)有點(diǎn)混亂,而且出錯(cuò)率比較高,不夠穩(wěn)定,所以不采用此方案。方案二:采用與八個(gè)三極管功能一樣的集成芯片ULN2803,此芯片1-8端口輸入,18-11端口輸出,驅(qū)動(dòng)能力為500MA50V,大大滿(mǎn)足了512個(gè)LED燈的電流,用一個(gè)芯片替代八個(gè)三極管,不僅體積變小了,功能還更強(qiáng)大了,所以采用此方案。 2.2.3 顯示模塊方案一:由于我們常用的LED燈不容易聚光,光發(fā)散比較厲害點(diǎn)亮?xí)r相互之間將會(huì)有影響,容易影響視角效果。因?yàn)閭鹘y(tǒng)的LED燈的發(fā)光散比較厲害,而且燈彼此之間的距離比較近,互相之間干擾大,影響視覺(jué)效果,顯示的圖像不清晰,所以不可采用此方案。方案二:采用白發(fā)藍(lán)的LED霧燈,可以很好的收聚光線,使要顯示的燈的光亮不會(huì)影響周?chē)鸁舻牧炼?,暗滅很明顯,工作電壓2.7-4.2V,電流為2MA-10MA如圖2-2所示: 圖2-2 霧面乳型LED燈 第三章 系統(tǒng)硬件電路設(shè)計(jì)與實(shí)現(xiàn)3.1 硬件電路設(shè)計(jì)系統(tǒng)以STC12C5A60S2單片機(jī)為控制核心,其特點(diǎn)是能與8051指令和管腳兼容,而且片內(nèi)還有很大的存儲(chǔ)空間,滿(mǎn)足程序代碼存儲(chǔ),此單片機(jī)還有低功耗和串口燒寫(xiě)的功能,時(shí)鐘發(fā)生源有很多種,比如阻容低速時(shí)鐘源、帶緩沖放大的晶體時(shí)鐘源、普通晶體時(shí)鐘源等,但由于考慮到電路的穩(wěn)定性最終決定采用普通晶體時(shí)鐘源為時(shí)鐘發(fā)生器,其晶體用12MHZ的晶體,顯示模塊則用512個(gè)LED白發(fā)藍(lán)的霧燈來(lái)實(shí)現(xiàn)。3.2 單片機(jī)最小系統(tǒng)單片機(jī)最小系統(tǒng)是指能夠讓單片機(jī)工作并發(fā)揮其作用的必要組成部分,就STC12C5A60S2單片機(jī)來(lái)說(shuō),其一般包括:?jiǎn)纹瑱C(jī)、時(shí)鐘電路、復(fù)位電路、輸入/ 輸出設(shè)備等(見(jiàn)圖3-1)。單片機(jī)的最小系統(tǒng)如下圖所示: 圖3-1單片機(jī)最小系統(tǒng)框圖3.2.1時(shí)鐘電路設(shè)計(jì)時(shí)鐘電路時(shí),我們首先必須先了解單片機(jī)時(shí)鐘端口的使用和特點(diǎn):XTAL1(AT89C51中19 腳) :?jiǎn)纹瑱C(jī)內(nèi)部振蕩電路的輸入端口。XTAL2(AT89C51中18 腳) :?jiǎn)纹瑱C(jī)內(nèi)部振蕩電路的輸出端口。XTAL1 與XTAL2其實(shí)就是一個(gè)反向的放大器,它可以與石英晶振連接作為一個(gè)時(shí)鐘振蕩電路。 內(nèi)部方式的的時(shí)鐘電路就是如圖3-3所示,只要在XTAL1、XTAL2上接一個(gè)石英晶體并在兩端接兩個(gè)電容,這樣就可以產(chǎn)生一個(gè)內(nèi)部激蕩電路,這里需要注意的是此實(shí)驗(yàn)用的晶振是12MHZ的,和晶振相連的電容一般選用33PF的陶瓷電容。外部方式的時(shí)鐘電路就是如圖3-4所示,RXD直接接地,TXD再接外部振蕩器。外部振蕩信號(hào)要求采用頻率低于12MHZ的方波。圖3-3內(nèi)部方式時(shí)鐘電路 圖3-4外部方式時(shí)鐘電路要檢測(cè)晶振是不是正常工作可以通過(guò)示波器來(lái)檢查,方法是在XTAL2 輸出端接示波器并觀察波形是不是正弦波,要是是正弦波則正常工作,反之則不正常工作。也可以通過(guò)電壓表來(lái)測(cè)量,側(cè)量XTAL2 輸出端與地的電壓,要是2V則正常工作。3.2.2 P0 口外接上拉電阻由于STC12C5A60S2單片機(jī)P0口內(nèi)部沒(méi)有上拉電阻,是開(kāi)漏的,不管它的驅(qū)動(dòng)能力多大,相當(dāng)于它是沒(méi)有電源的,需要外部的電路提供,絕大多數(shù)情況下P0口是必需加上拉電阻的。作為一般的I/O口時(shí),當(dāng)P0口用來(lái)驅(qū)動(dòng)NPN管子的時(shí)候,就需要上拉電阻的,因?yàn)榇藭r(shí)只有當(dāng)P0為1時(shí)候,才能夠使后端導(dǎo)通。圖3-6 P0端口的1位結(jié)構(gòu)3.3驅(qū)動(dòng)模塊的設(shè)計(jì)在這里我們用的是ULN2803達(dá)林頓管來(lái)做系統(tǒng)的驅(qū)動(dòng),ULN2803采用AP=DIP18,AFW=SOL18封裝方式。8個(gè)NPN達(dá)林頓晶體管,1-8引腳:輸入端;11-18引腳:輸出端;9引腳:地端;10引腳:電源+,連接在陣列非常適合邏輯接口電平數(shù)字電路(例如TTL,CMOS或PMOS上/ NMOS)和較高的電流/電壓,如電燈,電磁閥,繼電器,打印錘或其他類(lèi)似的負(fù)載,廣泛的使用范圍:計(jì)算機(jī),工業(yè)和消費(fèi)應(yīng)用。所有設(shè)備功能由集電極輸出和鉗位二極管瞬態(tài)抑制。 該ULN2803是專(zhuān)為符合標(biāo)準(zhǔn)TTL,而制造ULN2804適合6至15V的高級(jí)別CMOS或PMOS上。該電路為反向輸出型,即輸入低電平電壓,輸出端才能導(dǎo)通工作。 圖二 ULN2803內(nèi)部電路圖 (1/8單元)3.4 光立方整體設(shè)計(jì)思路3.4.1 LED燈排序方式設(shè)計(jì)如圖為光立方的主視圖,分別是光立方的八個(gè)豎面,陽(yáng)極的八個(gè)端口由單片機(jī)P3.5口擴(kuò)展出來(lái)的八個(gè)74HC595控制,而陰極則每層相連,由P3.6,P3.7口控制。 圖3-8 3D8光立方效果圖3.4.2 LED燈接法方式設(shè)計(jì)由于光立方是由8*8*8的512個(gè)燈組成的必須每盞燈都是單獨(dú)控制的,可單片機(jī)的I/O口沒(méi)有那么多,那么我們就要通過(guò)擴(kuò)展I/O口來(lái)實(shí)現(xiàn)控制,用什么來(lái)擴(kuò)展呢?這里我們用到的是結(jié)構(gòu)簡(jiǎn)單的74hC593,用它我們就可以一個(gè)口擴(kuò)展成八個(gè)口,這樣單片機(jī)的八個(gè)口就可以擴(kuò)展出8*8一共64個(gè)I/O口這樣就可以控制LED燈的一個(gè)正極那么對(duì)于負(fù)極我們?cè)趺纯刂颇兀@里我們可以通過(guò)共連陰極的方法控制,就是把每層LED的陰極都連在一起,八層就有八個(gè)接口,這八個(gè)接口通過(guò)ULN2803控制接在單片機(jī)的另外八個(gè)接口上其實(shí)我們就是用單片機(jī)的16個(gè)I/O接口,通過(guò)擴(kuò)展得到了64+8個(gè)接口,這樣就可以把512個(gè)LED燈給控制好了,原理圖如圖3-9所示。 x軸y軸第一個(gè)74HC595八個(gè)口第八個(gè)74HC595八個(gè)口8到1從z軸x軸ULN2803的八個(gè)口 圖3-9 LED結(jié)構(gòu)設(shè)計(jì)圖 3.5光立方搭建方法3.5.1將LED從點(diǎn)到線的搭建準(zhǔn)備材料首先要找一塊萬(wàn)用板如圖3-11,這樣就可以保持燈與燈之間的距離保持相等,在這里我們用的是白發(fā)藍(lán)的LED燈如圖3-12所示,長(zhǎng)正短負(fù),我們采用的是共陰的連接方法,所以要把燈的形狀折成如圖3-13的樣子,必須要折成90度,把燈插在原來(lái)選好的孔內(nèi),兩個(gè)燈之間的距離是23mm,然后把八個(gè)這樣的燈焊接好如圖3-14所示 ,注意:彎折陰極腳時(shí)彎曲處盡量靠近燈體不要留太長(zhǎng),這樣焊接陽(yáng)極時(shí)不容易造成短路。 圖3-11萬(wàn)能板 圖3-12 LED燈的正負(fù)極 圖3-13 LED燈的形狀 圖3-14 已搭好的8個(gè)LED燈這樣做出一條有八個(gè)LED燈組成的共陰極的燈鏈如圖3-15所示,這里要注意焊接的時(shí)間和焊錫的用量,要是焊接時(shí)間太長(zhǎng)就會(huì)把LED燈燙壞,用焊錫要均勻,不能太多也不能太少,太少連接不牢固,太多不美觀。圖3-15焊接好的8個(gè)LED燈鏈3.5.2將LED從線到面的搭建接下把焊好的64個(gè)共陰的LED燈的陽(yáng)極相連如圖3-16所示,相連后就得到一個(gè)8*8的燈面如圖3-17所示,注意:在焊接過(guò)程中會(huì)產(chǎn)生靜電,所以要求電焊鐵要接地,焊接完后要用萬(wàn)用表測(cè)量每個(gè)燈是否正常,是否存在虛焊和擊穿。 圖3-16陽(yáng)極相連 圖3-17 64個(gè)LED焊接圖3.5.3將LED從面到體的搭建最后把焊好的八個(gè)面分別接在做好的電路板上,陽(yáng)極對(duì)應(yīng)接在八個(gè)74HC573的八個(gè)引腳上,陰極每一層給連接起來(lái)接在ULN2803的輸出端口上,這樣硬件模塊的顯示部分就算做好了,如圖3-18所示。 圖3-18已搭好的8層LED燈3.6 PCB板的焊接 3.6.1 PCB板的制作PCB板制作分為制作印制電路板、清洗與打孔和檢修三個(gè)環(huán)節(jié),對(duì)于PCB板印刷的制作環(huán)節(jié)大致分為印制底圖圖樣描繪、底圖掩膜層制作和蝕刻加工等。對(duì)于主板的大小選擇上,主板是整個(gè)光立方的底座,大小要合適,不宜過(guò)大也不宜太小,太大不好看,太小放不下,一般設(shè)計(jì)的和焊的LED燈的尺寸差不多,剛好放的下還有點(diǎn)剩余最好,這樣既美觀又節(jié)省資源。首先要用到DXP進(jìn)行電路板的圖紙?jiān)O(shè)計(jì)和仿真測(cè)試,當(dāng)仿真沒(méi)有錯(cuò)誤后,就可以自動(dòng)布線,手動(dòng)布局,生成3D的PCB版圖,把生成的PCB版圖文件拿去制作PCB板。3.6.2 主板的焊接在焊接主板之前必須保證主板清潔干凈,檢查是否有破損有裂縫,各個(gè)元器件的符號(hào)是否清晰,所要焊接的元器件是否齊全,焊各種元器件的準(zhǔn)備工作是否都做好了,元器件是否都是完好的功能是否正常都要先檢測(cè)好,這些都確定沒(méi)有問(wèn)題后,就開(kāi)始按原理圖上的位置焊接元器件,焊接時(shí)用錫不要太多,那樣會(huì)很不好看,而且有可能會(huì)和附近的元器件發(fā)生短路,焊接時(shí)間不能太久,很多元器件受不了電烙鐵的高溫,還要避免靜電干擾,焊點(diǎn)要小要均勻,剛好焊住而且焊點(diǎn)光滑明亮。3.6.3主芯片的焊接 單片機(jī)的焊接是個(gè)難點(diǎn),因?yàn)橛玫氖琴N片的單片機(jī)焊腳很小,焊錫一多就容易混成一團(tuán),對(duì)于貼片單片機(jī)的焊接和其它元器件的焊接不同,它的焊接首先是要固定四個(gè)腳,把四個(gè)角用焊錫固定好了,就一條邊一條邊的焊,先是在一條邊上用很多的焊錫,再用焊錫膏弄在焊錫上,然后烙鐵從一條邊上劃過(guò),這時(shí)焊錫在焊錫膏的作用下就會(huì)彼此分離就剛好把單片機(jī)的引腳焊住了,以此類(lèi)推其它邊也焊完了,這樣焊接的單片機(jī)既美觀又簡(jiǎn)單,如果你按傳統(tǒng)辦法焊接,很容易兩個(gè)引腳短接還不美觀。圖3-1 單片機(jī)焊接3.6.4開(kāi)關(guān)及按鍵的焊接按鍵的焊接是最簡(jiǎn)單的,四個(gè)引腳分別插在四個(gè)孔中,要注意的是按鍵的四個(gè)腳是兩兩一對(duì)的,不要認(rèn)為他們都是一樣的,要是焊錯(cuò)了就沒(méi)有按鍵的功能了,就成了一根導(dǎo)線了,自鎖開(kāi)關(guān)的焊接比較復(fù)雜,特別是六根引腳的開(kāi)關(guān),它的按下和彈回來(lái)接通的引腳是不同的引腳,自鎖開(kāi)關(guān)的原理圖如下圖4-2所示。 圖3-2 自鎖開(kāi)關(guān)圖3.6.4排插及晶振的焊接排插的焊接需要把針和板子貼緊,不能留下空隙,而且排插短的那頭接板子,在焊接的時(shí)候排插會(huì)比較熱,不能用手直接接觸,先焊排插的兩端,焊完兩端排插就固定了,再焊剩下的就簡(jiǎn)單了,對(duì)于晶振的焊接要迅速,晶振比較脆弱,盡量快點(diǎn)焊接。圖3-3 PCB板的正反面第四章 軟件設(shè)計(jì)系統(tǒng)的組成有兩各個(gè)部分一個(gè)是硬件一個(gè)則是軟件,軟件的伸縮性很大,編寫(xiě)的好的程序?qū)崿F(xiàn)起來(lái)簡(jiǎn)單不易出錯(cuò),編的不好的數(shù)據(jù)會(huì)出現(xiàn)很多問(wèn)題,本系統(tǒng)采用的是模塊化的設(shè)計(jì)方案,減少軟件出錯(cuò)的概率,在軟件的設(shè)計(jì)過(guò)程中需要用到了軟件編輯器,軟件可以使單片機(jī)上電初始化,也可以是單片機(jī)實(shí)現(xiàn)特定的功能效果。本系統(tǒng)程序主要由三大塊組成,分別是主程序、按鍵程序和顯示程序,軟件的執(zhí)行過(guò)程如下圖3-1所示。首先程序執(zhí)行主程序,在主程序中判斷按鍵程序,當(dāng)接收到按鍵程序時(shí),主程序調(diào)用顯示程序,把顯示程序發(fā)給硬件,硬件顯示出來(lái)。圖4-1 軟件執(zhí)行圖4.1 主程序的設(shè)計(jì)一般編寫(xiě)程序都是從功能出發(fā),要求怎么的功能就寫(xiě)怎么的代碼,本系統(tǒng)都是采用C語(yǔ)言的編碼格式編寫(xiě)的代碼,設(shè)計(jì)了三個(gè)外接按鍵P3.2、P3.3、P3.4,分別是主菜單、確定和退出,主菜單里有自動(dòng)模式、頻譜模式、測(cè)試模式,系統(tǒng)還設(shè)置了呼吸待機(jī)燈,流程圖如3-2所示:圖4-2 主程序流程圖程序的開(kāi)始之前必須要寫(xiě)好各個(gè)模塊的初始化定義,初始化的內(nèi)容有中斷初始化,定時(shí)器的初始化,串口的通信方式和波特率的選定,I/O口的設(shè)定等等。4.2 顯示程序的設(shè)計(jì)顯示程序一般由字庫(kù)代碼和執(zhí)行程序構(gòu)成,字庫(kù)代碼可以借助取模軟件,由靜態(tài)的畫(huà)面通過(guò)像素點(diǎn)的移動(dòng),利用人眼的視覺(jué)延時(shí)效果,產(chǎn)生動(dòng)的效果,這就要求對(duì)掃描時(shí)間的控制和頻率的的快慢決定的很好。4.2.1顯示模塊的原理要使靜態(tài)的畫(huà)面動(dòng)起來(lái)就需要對(duì)靜態(tài)圖像不斷的刷新,圖像與圖形之間切換的速度很快,這樣人眼看出來(lái)的效果才是流暢的動(dòng)畫(huà),掃描是把光立方分成很多的部分,一個(gè)部分一個(gè)部分的掃描顯示,當(dāng)掃描到最后一部分時(shí)又開(kāi)始從第一部分循環(huán)掃描,其實(shí)每一個(gè)LED燈的亮度都是由刷新的速度決定的,刷新速度快燈的亮度就亮,這是因?yàn)槿说囊曈X(jué)的延時(shí),刷新速度太快亮滅的效果就看不出來(lái),在人眼里看到的就是一直亮著,而且亮度還會(huì)疊加,實(shí)際的燈的亮度比看到的燈的亮度暗很多。4.2.2 顯示程序的設(shè)計(jì)本設(shè)計(jì)的程序采用的是動(dòng)態(tài)的掃描顯示,通過(guò)選通一列的方式,這時(shí)程序里的一行數(shù)組就按照由低位到高位的方式依次從單片機(jī)的I/O口輸出到驅(qū)動(dòng)74HC595移位寄存器中從寄存器中輸出到LED的陽(yáng)極控制燈的亮暗,這樣一次一次的循環(huán)就可以產(chǎn)生一個(gè)動(dòng)態(tài)的畫(huà)面,整個(gè)流程圖如下3-3所示。單片機(jī)高速的輸出數(shù)據(jù),數(shù)據(jù)通過(guò)P3.5口到達(dá)74HC595,通過(guò)綜合選通端口選通一個(gè)74HC595輸出,緊接著單片機(jī)又通過(guò)P3.5口輸出另一組數(shù)據(jù),通過(guò)改變選通端口輸入到另一個(gè)寄存器中再顯示,其實(shí)這些數(shù)據(jù)都有一個(gè)字模,通過(guò)調(diào)用這些字模,再配合數(shù)據(jù)的左移右移,或者加一減一,這樣一個(gè)字庫(kù)就可以動(dòng)起來(lái),再加上延時(shí)程序這樣程序就可以完美的顯示。 圖3-3 顯示程序流程圖4.3 軟件調(diào)試單片機(jī)是這個(gè)設(shè)計(jì)的核心,在硬件正常工作的情況下檢測(cè)軟件才是正確的,要是硬件都存在問(wèn)題去檢測(cè)軟件完全沒(méi)有意義,對(duì)于硬件的檢測(cè),可以對(duì)單片機(jī)的時(shí)鐘引腳18和19檢測(cè),引腳18對(duì)地的電壓在2.24v,而引腳19是2.09v,對(duì)于復(fù)位電路的檢測(cè)則是用5v的電源短接下引腳9,模擬復(fù)位電路,如果單片機(jī)復(fù)位正常則不存在問(wèn)題。在程序的編寫(xiě)中用keil編寫(xiě),keil軟件可以生成.HEX文件,因?yàn)槲覀冇玫降南螺d軟件時(shí)專(zhuān)業(yè)的STCISP.exe軟件,這個(gè)軟件只能識(shí)別.HEX文件,只有.HEX文件才能寫(xiě)入單片機(jī)。在程序的編寫(xiě)中全部都是采用C語(yǔ)言編寫(xiě),C語(yǔ)言簡(jiǎn)潔靈活,兼容性高,編譯簡(jiǎn)單,執(zhí)行效率高,對(duì)于循環(huán)的使用方便。第五章 成品測(cè)試和問(wèn)題分析5.1 成品測(cè)試5.1.1. 硬件調(diào)試本設(shè)計(jì)因?yàn)橛玫降腖ED燈比較多,必須確保每個(gè)燈都正常工作,如果512個(gè)LED燈有一個(gè)出現(xiàn)擊穿或者不亮就必須把八層LED都拆開(kāi),取下壞掉的燈換上好的再焊上,而且要保持結(jié)構(gòu)的整齊度行列對(duì)齊,這樣顯示的效果就會(huì)比較好。在測(cè)試過(guò)程中發(fā)現(xiàn)一些問(wèn)題,以下是問(wèn)題及問(wèn)題的解決方法:1、這個(gè)系統(tǒng)功能比較強(qiáng)大,所以需要的驅(qū)動(dòng)程序和程序量比較多8k的89C51完全不夠代碼的存儲(chǔ)會(huì)出現(xiàn)程序的溢出和無(wú)法編譯的情況。 解決方法:這里我們采用STC12C5A60S2 單片機(jī),它比89C51有更大的存儲(chǔ),STC12C5A60S2單片機(jī)有60K FLASH ROM,而且還自帶AD功能,適應(yīng)高速掃描的光立方。 2、本系統(tǒng)發(fā)現(xiàn)部分LED燈的亮滅沒(méi)有規(guī)律,有些燈甚至都不亮,還有些燈閃爍不定。解決方法:這里我把八層LED燈從電路板上分別取下,單個(gè)燈用萬(wàn)用表的測(cè)燈功能測(cè)量,發(fā)現(xiàn)不亮的LED燈時(shí),我就給單個(gè)替換。3、在單個(gè)燈的替換過(guò)程中居然發(fā)現(xiàn)我測(cè)量的單個(gè)燈亮了,可是我沒(méi)測(cè)量的LED燈也同時(shí)亮了解決方法:這里我們知道可能是LED燈在焊接過(guò)程中被擊穿了,我采用的是反接正負(fù)橫豎排的方法,當(dāng)我們反接時(shí)壞掉的LED燈就會(huì)點(diǎn)亮,還有一種方法就是萬(wàn)用表的正負(fù)兩極都接在橫排或者豎排,這時(shí)被點(diǎn)亮的LED燈就是被損壞的,取下替換了就可以了。4、在光立方的顯示中有某一層始終是亮的,不該點(diǎn)亮?xí)r是亮的,當(dāng)應(yīng)該點(diǎn)亮?xí)r又特別亮,而且把負(fù)極的引線去掉依然點(diǎn)亮。解決方法:這種情況就是整層中有一盞燈壞了,當(dāng)我們把負(fù)極的引線去掉后整層依然點(diǎn)亮,仔細(xì)觀察發(fā)現(xiàn)這一層會(huì)有一盞燈不亮,壞的燈就是它了,把他取下替換就可以了。5、系統(tǒng)焊接完成上電后發(fā)現(xiàn)沒(méi)有反應(yīng),燈不亮,系統(tǒng)不工作。解決方法:這里我們用萬(wàn)用表對(duì)電路板個(gè)部分檢查,發(fā)現(xiàn)系統(tǒng)沒(méi)有供電,檢查電源模塊發(fā)現(xiàn)電源焊接口虛焊,電路板的焊點(diǎn)脫落,這里我們采用外部備用口送電。6、本系統(tǒng)由于焊接點(diǎn)比較多,而且焊接的點(diǎn)離燈頭很近,所以很容易把燈燒壞,焊烙鐵在焊接過(guò)程中會(huì)產(chǎn)生靜電,靜電可以把LED燈給損壞。解決問(wèn)題:在這里我們考慮把焊烙鐵接地,如果焊烙鐵沒(méi)有接地線我們可以在焊烙鐵中部加一根引線接在暖氣片上或者直接接地,焊完一行檢查一次,焊完一個(gè)面再檢查一次,最后全部焊完再檢查,確保LED燈全部正常工作。 5.1.2. 軟件系統(tǒng)光立方程序比較多,需要的存儲(chǔ)空間要比常規(guī)的51系列單片機(jī)的大,而且刷新率非常的高,要求的性能很高,軟件編寫(xiě)難度大,要有很強(qiáng)的空間思維意識(shí),想像力要很豐富,程序變化大,編譯中存在很多問(wèn)題,所以需要精心的調(diào)試很改進(jìn),優(yōu)化出最簡(jiǎn)單效果最好的程序。1、燒入程序后,LED燈的亮度很不均勻,明亮閃爍。 解決方法:檢查元器件是否有虛焊和漏焊,調(diào)整延時(shí)的時(shí)間長(zhǎng)短,調(diào)試出效果最佳的延時(shí)時(shí)間,2、用keil編寫(xiě)完軟件發(fā)現(xiàn)無(wú)法編譯通過(guò),顯示程序P3無(wú)定義。解決方法:頭文件選擇錯(cuò)誤不能選擇常規(guī)單片機(jī)的頭文件,要自制一個(gè)頭文件,放在主程序的文件下。3、程序編譯完成后,編譯也通過(guò)了,沒(méi)有產(chǎn)生.HEX文件。解決方法:在軟件中沒(méi)有選擇產(chǎn)生.HEX文件,在設(shè)置里設(shè)置產(chǎn)生.HEX文件4、光立方顯示不穩(wěn)定,常常會(huì)自我中斷,不按程序設(shè)定的功能顯示。解決方法:程序編寫(xiě)中對(duì)于按鍵沒(méi)有處理,要加一個(gè)按鍵去抖動(dòng)判斷,判斷按鍵是否按下而不是抖動(dòng)觸到。5.2 結(jié)果分析本設(shè)計(jì)經(jīng)過(guò)一個(gè)多月的焊接再加上一個(gè)多月的調(diào)試和改進(jìn),現(xiàn)在總算順利完成了,硬件和軟件的運(yùn)行還是算比較穩(wěn)定,本設(shè)計(jì)利用硬件的立體性,利用軟件的變化多樣性,這兩者結(jié)合起來(lái)就可以產(chǎn)生非常絢麗的畫(huà)面效果,該設(shè)計(jì)功能強(qiáng)大,DIY性特別強(qiáng),可以通過(guò)改變程序產(chǎn)生很多意料不到的畫(huà)面效果。第六章 結(jié)論 本畢業(yè)設(shè)計(jì)主要采用STC12C5A60S2單片機(jī)控制,加上幾個(gè)輔助模塊,再加上LED顯示模塊,就構(gòu)成了立體顯示的8*8*8的光立方,此光立方集合了美學(xué),研究,觀賞于一體,既有觀賞性又有研究和開(kāi)發(fā)的多種優(yōu)點(diǎn),此外在光立方LED的焊接過(guò)程中要求比較高,工程量比較大,可以大大鍛煉焊接能力極大的提高自己的動(dòng)手能力,是個(gè)很有趣很受鍛煉的設(shè)計(jì)。 從畢業(yè)設(shè)計(jì)的題目選擇到基本確定大概花了一個(gè)星期,在確定題目的同時(shí)我也積極在網(wǎng)上查找資料,有時(shí)去圖書(shū)館看看關(guān)于單片機(jī)類(lèi)的書(shū)籍,查查芯片的使用和要求及優(yōu)點(diǎn)和不足,最終我找到最合適的STC12C5A60S2這款芯片集合了好多芯片的優(yōu)點(diǎn),功能特別強(qiáng)大,現(xiàn)在最新的單片機(jī),正由于它是最新的,所以在找資料和畫(huà)原理圖方面很不好實(shí)現(xiàn),幾乎很難找到關(guān)于它的資料,即使找到了也是純英文的,還要自己翻譯,在原理圖方面也一樣復(fù)雜,幾乎沒(méi)有關(guān)于它的封裝,在找資料這塊花了不少時(shí)間,對(duì)于LED燈焊接方面也要求的很高,重復(fù)無(wú)聊的折LED的管腳這都還好,主要是LED燈的擊穿問(wèn)題特別難處理,對(duì)于單個(gè)LED我們需要檢測(cè),對(duì)于焊成條形的LED也要檢測(cè),對(duì)于焊成面的LED還要檢測(cè),最困難的是對(duì)于焊成體的LED還要檢測(cè),有時(shí)一條LED燈沒(méi)問(wèn)題,可是焊成面就出問(wèn)題。雖然在動(dòng)手做這個(gè)設(shè)計(jì)之前我也是做好各方面準(zhǔn)備,可是在實(shí)施的時(shí)候遇到的問(wèn)題還是使我料想不到,各種軟件的使用還有貼片元件的焊接都是很考驗(yàn)基本功的,有些不懂的我就在網(wǎng)上看相關(guān)視頻,到各種DIY論壇請(qǐng)教這方面的“大神”,可以說(shuō)我已經(jīng)下載了網(wǎng)上所有關(guān)于光立方的資料,這過(guò)程很辛苦,有時(shí)一天就為了解決一個(gè)問(wèn)題,從早找到晚,比如找74HC595的PCB封裝圖,或者STC12C5A60S2的原理圖和封裝圖。對(duì)于軟件模塊要求的就更高了,軟件的書(shū)寫(xiě)規(guī)范和字庫(kù)的創(chuàng)建,都是一個(gè)不小的工程,這個(gè)系統(tǒng)中用到的延時(shí)程序,每一幀的時(shí)間計(jì)算,掃描的頻率和燈的亮度,都要細(xì)細(xì)計(jì)算,編寫(xiě)調(diào)試再編寫(xiě)再調(diào)試,這樣反復(fù)好多次才終于編寫(xiě)出一個(gè)穩(wěn)定的程序??偟膩?lái)說(shuō),做這個(gè)設(shè)計(jì)確實(shí)累,可是當(dāng)光立方正常工作時(shí)看到它顯示出絢麗的動(dòng)畫(huà)時(shí),付出的這一切都值得了,在制作過(guò)程中得到的經(jīng)驗(yàn)和學(xué)到的知識(shí)是扎實(shí)的,在制作和研究過(guò)程中覺(jué)得特別的充實(shí),理論知識(shí)得到了鞏固,知識(shí)再也不是僅僅停留在書(shū)面上了,動(dòng)手能力也加強(qiáng)了很多,現(xiàn)在懂得了自己查資料,自己分析問(wèn)題解決問(wèn)題,可以說(shuō)這次的畢業(yè)設(shè)計(jì)做的非常的有意義,受益匪淺。參考文獻(xiàn)1閻石. 數(shù)字電子技術(shù)基礎(chǔ)第四版M北京:高等教育出版社, 1998.12:77 -1742 張瑞玲.單片機(jī)原理與應(yīng)用 西北工業(yè)大學(xué)出版社2010年12月3劉守義主編. 數(shù)字電子技術(shù)(第二版) M. 西安電子科技大學(xué)出版社, 2007,74陳堂敏.劉煥平主編.單片機(jī)原理與應(yīng)用.北京:北京理工大學(xué)出版社,20075余孟嘗數(shù)字電子技術(shù)基礎(chǔ)簡(jiǎn)明教程高等教育出版社6鄧元慶數(shù)字電路與邏輯設(shè)計(jì)M北京:電子工業(yè)出版社, 1995:49- 195.7肖洪兵.跟我學(xué)用單片機(jī)M.北京航空航天大學(xué)出版社,20028楊元挺電子技術(shù)技能訓(xùn)練電子工業(yè)出版社9王東峰等.單片機(jī)C語(yǔ)言應(yīng)用100例M.電子工業(yè)出版社,200910潘永雄.新編單片機(jī)原理與應(yīng)用,西安:西安電子科技大學(xué)出版社,200311童詩(shī)白,華成英,模擬電子技術(shù)基礎(chǔ),北京:高等教育出版社,200012馬忠梅等,單片機(jī)的C語(yǔ)言應(yīng)用程序設(shè)計(jì),北京航空航天大學(xué)出版社,13馮建華,趙亮單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與產(chǎn)品開(kāi)發(fā)M北京:人民郵電出版社,200414付曉光.單片機(jī)原理與使用技術(shù)M.清華大學(xué)出版社,ISBN7- 81082- 169- 5TP 15胡漢才單片機(jī)原理及其接口技術(shù)(第2版) 北京:清華大學(xué)出版社16李中發(fā)數(shù)字電子技術(shù)基礎(chǔ)中國(guó)水利水電出版社致謝語(yǔ)臨近畢業(yè)現(xiàn)在才感覺(jué)學(xué)校那么的溫暖,有種不舍的情懷,在離別之際我留在這學(xué)校的唯一作品就是這份畢業(yè)設(shè)計(jì),這里要感謝我的導(dǎo)師,在我做畢業(yè)設(shè)計(jì)的過(guò)程中,從論文的撰寫(xiě)畢業(yè)設(shè)計(jì)的選題還有設(shè)計(jì)思路的擴(kuò)展方面都給予了很大幫助,主任抽出寶貴的時(shí)間給我指導(dǎo),時(shí)不時(shí)的問(wèn)我有沒(méi)有什么困難,有困難她給我解決,處處對(duì)我很關(guān)照,作為導(dǎo)師盡職盡責(zé)和藹可親。在這也謝謝我的同學(xué)們給于我?guī)椭?,給我提供焊接和很多軟件和硬件測(cè)試工具。附錄1、 實(shí)物圖: 2、 系統(tǒng)原理圖:3、系統(tǒng)PCB圖:程序清單#inClude#inClude /空語(yǔ)句調(diào)用頭文件#inCludezimo.h#define uChar unsigned Char#define uint unsigned int/*/sBit DS=P10;/*/*/sBit CLK=P11; /74HC595的SH-CP(11腳)sBit STB=P12; /74HC595的時(shí)鐘和輸出鎖存(12腳)/*/ /*坐標(biāo)數(shù)組*/*/uChar Code shu8=0,1,2,3,4,5,6,7; /十進(jìn)制數(shù)選uChar Code x18=0x7f,0xBf,0xdf,0xef,0xf7,0xfB,0xfd,0xfe;/595數(shù)據(jù)uChar Code y18=0xfe,0xfd,0xfB,0xf7,0xef,0xdf,0xBf,0x7f;/595使能uChar Code z18=0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80;/層掃描/*/ /*亮度調(diào)節(jié)延時(shí)*/*/void delay(unsigned int i)unsigned int j;for(;i0;i-) for(j=5;j0;j-); /*/ /*ms延時(shí)*/*/void delayms(uChar xms)uChar i,j;for(i=0;ixms;i+)for(j=0;j110;j+);/*/ /*亮度調(diào)整*/*/*void PWM_LIGHT(unsigned Char P)OE=0;del

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論