單片機音樂彩燈設(shè)計_第1頁
單片機音樂彩燈設(shè)計_第2頁
單片機音樂彩燈設(shè)計_第3頁
單片機音樂彩燈設(shè)計_第4頁
單片機音樂彩燈設(shè)計_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、藝術(shù)彩燈控制系統(tǒng)設(shè)計一概述11藝術(shù)彩燈的設(shè)計背景及意義彩燈是人們?nèi)粘I钪械囊环N裝飾用品,它美觀大方,尤其在節(jié)日期間,倍增節(jié)日氣氛。它蘊涵著豐富的文化底蘊,被廣泛地應(yīng)用于各種店面的裝飾。變換無窮的彩燈樣式,給城市增添活力,吸引著人們的注意力,深受人民的喜愛。在日常生活中,人們還將彩燈擺放成各種圖案,增添美感。隨著電子技術(shù)的發(fā)展,應(yīng)用系統(tǒng)向著小型化、快速化、大容量、重量輕的方向發(fā)展??茖W(xué)技術(shù)更加貼近人們的生活,向著滿足人們需求的方向發(fā)展。節(jié)日彩燈的設(shè)計與制作工藝也一步一步的走向成熟。1.2系統(tǒng)設(shè)計功能概述本設(shè)計是以AT89C51單片機為基礎(chǔ)的音樂彩燈控制方案,來實現(xiàn)對LED彩燈的控制。以AT89

2、C51單片機作為主控核心,通過匯編語言來控制單片機按下“開始”按鍵,8個LED燈從上到下開始循環(huán)點亮,按下“上”按鍵,燈由上向下流動,按下“下”按鍵,燈由下向上流動,按下“停止”按鍵,所有燈為暗。二彩燈設(shè)計內(nèi)容簡要:2.1彩燈設(shè)計任務(wù):以單片機為核心,設(shè)計一個節(jié)日音樂彩燈控制器。2.2彩燈設(shè)計要求:P1.2-開始,按此鍵則燈開始流動(由上而下)。P1.3-停止,按此鍵則停止流動,所有燈為暗。P1.4-上,按此鍵則燈由上向下流動。P1.5-下,按此鍵則燈由下向上流動。2.3彩燈總體控制框圖:3.2AT89C51單片機硬件結(jié)構(gòu):AT89C51是一種帶4K字節(jié)閃存可編程可擦除只讀存儲器(FPEROM

3、FlashProgrammableandErasableReadOnlyMemory)的單片機芯片,它采用靜態(tài)CMOS工藝制造8位微處理器,最高工作頻率位24MHZ。AT89C5外形及引腳排列如圖所示:管腳說明:RST:復(fù)位輸入。當振蕩器復(fù)位器件時,要保持RST腳兩個機器周期的高電平時間。P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。P1口:P1口是一個內(nèi)

4、部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當對

5、外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而

6、要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時,ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的PSEN信號將不出現(xiàn)。EA/VPP:當EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,EA將內(nèi)部鎖定為RESET;當EA端保持高電平時,此間內(nèi)部程序存儲器。XT

7、AL1和XTAL2:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。33系統(tǒng)的硬件構(gòu)成及功能描述:控制系統(tǒng)硬件設(shè)計電路圖如圖所示:四系統(tǒng)的軟件設(shè)計ORG 0000H AJMP MAIN ORG 000BH AJMP INT ORG 0020H MAIN: JNB P1.2,START ;判斷按鍵P1.2(開始鍵)為0時轉(zhuǎn)MAIN程序 JMP MAIN ;否則返回 START: MOV 50H,#HIGH TABLE10 ;開始(默認情況下上到下) MOV 51H,#LOW TABLE10 ACALL BOFANG ;音樂播放初始設(shè)置 LJMP DOWNLIGHTSTOP: MOV P0,#0FF

8、H ;停止 SETB P3.5 JNB P1.2,START AJMP STOP DOWN: MOV 50H,#HIGH TABLE10 ;上到下 MOV 51H,#LOW TABLE10 ACALL BOFANG ;音樂播放初始設(shè)置 DOWNLIGHT: MOV DPTR,#TABLE1 ;將TABLE1首地址賦數(shù)據(jù)指針 AJMP GETDATA UP: MOV 50H,#HIGH TABLE10 ;下到上 MOV 51H,#LOW TABLE10 ACALL BOFANG ;音樂播放初始設(shè)置 UPLIGHT: MOV DPTR,#TABLE2 ;將TABLE2首地址賦數(shù)據(jù)指針 GETDAT

9、A: MOV R0,#08H MOV R6,DPH ;暫存指針值 MOV R7,DPL LOOP: CLR A ;A清零 MOV DPH,R6 MOV DPL,R7 MOVC A,A+DPTR ;表數(shù)據(jù)送A MOV P0,A ;將A值送P0端口 INC DPTR ;數(shù)據(jù)指針加1,指向表中的下一數(shù)據(jù) MOV R6,DPH MOV R7,DPL JNB P1.2,START ;P1.2口低電平則轉(zhuǎn)START程序執(zhí)行 JNB P1.3,STOP ;P1.3口低電平則轉(zhuǎn)STOP程序執(zhí)行 JNB P1.4,DOWN ;P1.4口低電平則轉(zhuǎn)DOWN執(zhí)行 JNB P1.5,UP ;P1.5口低電平則轉(zhuǎn)UP左

10、循環(huán)程序執(zhí)行 LJMP MUSIC ;跳轉(zhuǎn)音樂程序 BACK: DJNZ R0,LOOP CLR A ;判斷是上還是下 MOV DPH,R6 MOV DPL,R7 MOVC A,A+DPTR JNZ DOWNLIGHT LJMP UPLIGHT BOFANG: MOV TMOD,#11H ;音樂播放初始設(shè)置 MOV IE,#82H MOV 40H,#00H RET MUSIC: MOV A,40H ;音樂播放處理 MOV DPH,50H ;取表地址 MOV DPL,51HMOVC A,A+DPTR ;將表數(shù)據(jù)送累加器A JZ STOP2 ;累加器A為0則轉(zhuǎn)移(說明歌曲播放完 得重新播放) MO

11、V R1,A ANL A,#0FH RL A MOV R2,A MOV A,R1 SWAP A ANL A,#0FH JNZ SING CLR TR0 LJMP W1 SING: DEC A MOV 22H,A RL A MOV DPTR,#TABLE00 MOVC A,A+DPTR MOV TH0,A MOV 21H,A MOV A,22H RL A INC A MOVC A,A+DPTR MOV TL0,A MOV 20H,A SETB TR0 W1: LCALL DELAY INC 40H JNZ STOP1 ;A不為0則轉(zhuǎn)移 LJMP BACK STOP1: CLR TR0 ;音符結(jié)束

12、重新播放處理 LJMP BACK STOP2: CLR TR0 ;整首歌曲播放結(jié)束處理 MOV R2,#03H LCALL DELAY LCALL BOFANG LJMP BACK TABLE00: DW 64580,64684,64777,64820 DW 64898,64968,65030,64260 DW 64400,64524,65058,63835,64021INT: PUSH PSW PUSH ACC MOV TH0,21H MOV TL0,20H CPL P3.5 POP ACC POP PSW RETI DELAY: MOV R4,#100 ;延時100ms LOOP3: MO

13、V R5,#0FFHLOOP4: DJNZ R5,$ DJNZ R4,LOOP3 DJNZ R2,DELAY RET TABLE1: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH,01H TABLE2:DB 7FH,0BFH,0DFH,0EFH,0F7H,0FBH,0FDH,0FEH,00H TABLE10: DB 0d4H,84H,94H,82H,92H DB 12H,22H,82H,92H,02H,92H,82H,0d2H DB 82H,92H,14H,84H,02H,0d1H,0d1H DB 0c2H,0d2H,84H,0d2H,0d2H,82H,8

14、2H DB 84H,82H,82H,94H,82H,0d2H DB 82H,82H,82H,92H,02H,82H,82H,0d2H DB 0c4H,84H,0d4H,92H,0d2H DB 82H,0d2H,82H,92H,98H DB 04H,94H,88H DB 04H,94H,88H DB 04H,94H,88H DB 04H,94H,88H,04H DB 32H,32H,22H,12H,02H,92H,12H,92H DB 32H,32H,22H,12H,02H,92H,12H,92H DB 32H,32H,22H,12H,02H,92H,12H,22H DB 54H,44H,34H

15、,12H,22H DB 34H,22H,12H,02H,92H,12H,92H DB 32H,32H,22H,12H,02H,92H,12H,92H DB 32H,32H,22H,12H,02H,92H,12H,22H DB 54H,44H,32H,22H,12H,92H DB 00H END4.1程序流程圖:四系統(tǒng)的軟件設(shè)計4.1程序流程圖:程序如下:ORG0000HAJMPMAINORG000BHAJMPINTORG0020HMAIN:JNBP1.2,START;判斷按鍵P1.2(開始鍵)為0時轉(zhuǎn)MAIN程序JMPMAIN;否則返回START:MOV50H,#HIGHTABLE10開始(默

16、認情況下上到下)MOV51H,#LOWTABLE10ACALLBOFANG;音樂播放初始設(shè)置LJMPDOWNLIGHTSTOP:MOVP0,#0FFH停止SETBP3.5JNBP1.2,STARTAJMPSTOPDOWN:MOV50H,#HIGHTABLE10;上到下MOV51H,#LOWTABLE10ACALLBOFANG;音樂播放初始設(shè)置DOWNLIGHT:MOVDPTR,#TABLE1;將TABLE1首地址賦數(shù)據(jù)指針AJMPGETDATAUP:MOV50H,#HIGHTABLE10;下到上MOV51H,#LOWTABLE10ACALLBOFANG;音樂播放初始設(shè)置UPLIGHT:MOVD

17、PTR,#TABLE2;將TABLE2首地址賦數(shù)據(jù)指針GETDATA:MOVR0,#08HMOVR6,DPH;暫存指針值MOVR7,DPLLOOP:CLRA;A清零MOVDPH,R6MOVDPL,R7MOVCA,A+DPTR;表數(shù)據(jù)送AMOVP0,A;將A值送P0端口INCDPTR;數(shù)據(jù)指針加1,指向表中的下一數(shù)據(jù)MOVR6,DPHMOVR7,DPLJNBP1.2,START;P1.2口低電平則轉(zhuǎn)START程序執(zhí)行JNBP1.3,STOP;P1.3口低電平則轉(zhuǎn)STOP程序執(zhí)行JNBP1.4,DOWN;P1.4口低電平則轉(zhuǎn)DOWN執(zhí)行JNBP1.5,UP;P1.5口低電平則轉(zhuǎn)UP左循環(huán)程序執(zhí)行L

18、JMPMUSIC;跳轉(zhuǎn)音樂程序BACK:DJNZR0,LOOPCLRA;判斷是上還是下MOVDPH,R6MOVDPL,R7MOVCA,A+DPTRJNZDOWNLIGHTLJMPUPLIGHTBOFANG:MOVTMOD,#11H;音樂播放初始設(shè)置MOVIE,#82HMOV40H,#00HRETMUSIC:MOVA,40H;音樂播放處理MOVDPH,50H;取表地址MOVDPL,51HMOVCA,A+DPTR;將表數(shù)據(jù)送累加器AJZSTOP2;累加器A為0則轉(zhuǎn)移(說明歌曲播放完得重新播放)MOVR1,AANLA,#0FHRLAMOVR2,AMOVA,R1SWAPAANLA,#0FHJNZSIN

19、GCLRTR0LJMPW1SING:DECAMOV22H,ARLAMOVDPTR,#TABLE00MOVCA,A+DPTRMOVTH0,AMOV21H,AMOVA,22HRLAINCAMOVCA,A+DPTRMOVTL0,AMOV20H,ASETBTR0W1:LCALLDELAYINC40HJNZSTOP1;A不為0則轉(zhuǎn)移LJMPBACKSTOP1:CLRTR0;音符結(jié)束重新播放處理LJMPBACKSTOP2:CLRTR0;整首歌曲播放結(jié)束處理MOVR2,#03HLCALLDELAYLCALLBOFANGLJMPBACKTABLE00:DW64580,64684,64777,64820DW64

20、898,64968,65030,64260DW64400,64524,65058,63835,64021INT:PUSHPSWPUSHACCMOVTH0,21HMOVTL0,20HCPLP3.5POPACCPOPPSWRETIDELAY:MOVR4,#100;延時100msLOOP3:MOVR5,#0FFHLOOP4:DJNZR5,$DJNZR4,LOOP3DJNZR2,DELAYRETTABLE1:DB0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH,01HTABLE2:DB7FH,0BFH,0DFH,0EFH,0F7H,0FBH,0FDH,0FEH,00H;-T

21、ABLE10:DB0d4H,84H,94H,82H,92HDB12H,22H,82H,92H,02H,92H,82H,0d2HDB82H,92H,14H,84H,02H,0d1H,0d1HDB0c2H,0d2H,84H,0d2H,0d2H,82H,82HDB84H,82H,82H,94H,82H,0d2HDB82H,82H,82H,92H,02H,82H,82H,0d2HDB0c4H,84H,0d4H,92H,0d2HDB82H,0d2H,82H,92H,98HDB04H,94H,88HDB04H,94H,88HDB04H,94H,88HDB04H,94H,88H,04HDB32H,32H,2

22、2H,12H,02H,92H,12H,92HDB32H,32H,22H,12H,02H,92H,12H,92HDB32H,32H,22H,12H,02H,92H,12H,22HDB54H,44H,34H,12H,22HDB34H,22H,12H,02H,92H,12H,92HDB32H,32H,22H,12H,02H,92H,12H,92HDB32H,32H,22H,12H,02H,92H,12H,22HDB54H,44H,32H,22H,12H,92HDB00HEND五設(shè)計體會:歷時2個星期的單片機課程設(shè)計,我從中受益匪淺。因為對我而言學(xué)到的不僅是專業(yè)知識,而且是團隊的合作精神。作為一個團隊,分工就顯得尤為重要,我主要負責系統(tǒng)硬件電路設(shè)計和最終調(diào)試的任務(wù),我和搭檔互相幫助,彼此勉勵,有問題一起尋求解決之道

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論