


全文預(yù)覽已結(jié)束
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
學(xué) 號(hào): 0121118700107課 程 設(shè) 計(jì)題 目基于at89c52單片機(jī)的音樂跑馬燈學(xué) 院物流工程學(xué)院專 業(yè)物流工程班 級(jí)物流zy1101班姓 名申聚鵬 同 組 者指導(dǎo)教師袁兵2013年12月28日課程設(shè)計(jì)任務(wù)書學(xué)生姓名: 申 聚 鵬 專業(yè)班級(jí): 物流zy1101班 指導(dǎo)教師: 袁 兵 工作單位: 物流工程學(xué)院 題 目: 基于at89c52單片機(jī)的音樂跑馬燈 初始條件:1. protues 7 professional的isis 7 professional和ares 7 professional軟件2. keil uvision4軟件 3.單片機(jī)的相關(guān)資料指導(dǎo)書 要求完成的主要任務(wù): (包括課程設(shè)計(jì)工作量及其技術(shù)要求,以及說明書撰寫等具體要求)基于at89c52單片機(jī)的音樂跑馬燈的設(shè)計(jì)要求如下:a.有16個(gè)發(fā)光二極管做跑馬燈,其中跑馬燈有16種燈亮模式。b.有專門的按鍵用以切換跑馬燈的模式,并且對于任何一種跑馬燈模式都可以對燈亮速度進(jìn)行控制。c.每一種跑馬燈模式用led數(shù)碼管進(jìn)行顯示(0e)。d.當(dāng)跑馬燈處于e模式時(shí),音樂響起,音樂可以進(jìn)行切換。 時(shí)間安排:十八周到十九周設(shè)計(jì),十九周答辯指導(dǎo)教師簽名: 年 月 日系主任(或責(zé)任教師)簽名: 年 月 日本科生課程設(shè)計(jì)成績評(píng)定表姓 名申聚鵬性 別男專業(yè)、班級(jí)物流zy1101班課程設(shè)計(jì)題目:基于at89c52單片機(jī)的音樂跑馬燈課程設(shè)計(jì)答辯或質(zhì)疑記錄: 成績評(píng)定依據(jù):1. 選題合理、目的明確 10分2. 設(shè)計(jì)方案正確,具有可行性、創(chuàng)新性 20分3. 設(shè)計(jì)結(jié)果 20分4. 態(tài)度認(rèn)真、學(xué)習(xí)刻苦、遵守紀(jì)律 15分5. 設(shè)計(jì)報(bào)告的規(guī)范化、參考文獻(xiàn)充分(不少于5篇) 10分6. 答辯 25分最終評(píng)定成績(以優(yōu)、良、中、及格、不及格評(píng)定)指導(dǎo)教師簽字: 年 月 日摘 要單片機(jī)技術(shù)是一門不可或缺的技術(shù),對我們將來的工作以及生活和學(xué)習(xí)都有很密切的聯(lián)系。近年來,隨著電子技術(shù)和微機(jī)計(jì)算機(jī)的迅速發(fā)展,單片機(jī)的檔次不斷提高,其應(yīng)用領(lǐng)域也在不斷的擴(kuò)大,已在工業(yè)控制、尖端科學(xué)、智能儀器儀表、日用家電、汽車電子系統(tǒng)、辦公自動(dòng)化設(shè)備、個(gè)人信息終端及通信產(chǎn)品中得到了廣泛的應(yīng)用,成為現(xiàn)代電子系統(tǒng)中最重要的智能化的核心部件。 本設(shè)計(jì)使用at89c52芯片,利用p0的8個(gè)端口連接8個(gè)發(fā)光二極管,p1的8個(gè)端口連接8個(gè)發(fā)光二極管,通過p0.0到p0.7的值和p1.0到p1.7的值控制“跑馬燈”的亮滅,以達(dá)到顯示效果。設(shè)計(jì)的中斷程序要對多個(gè)按鍵動(dòng)作進(jìn)行響應(yīng),燈光變換的花樣有15種,用模式按鈕切換。按下模式按鈕鍵,程序?qū)词宸N模式切換,每按一次模式按鈕鍵,切換一次跑馬燈模式,而加速按鈕和減速按鈕可以改變閃爍速度;最后一種模式為音樂模式,加速按鈕可切換音樂。 在單片機(jī)運(yùn)行時(shí),可以在不同狀態(tài)下讓跑馬燈顯示不同的組合,作為單片機(jī)系統(tǒng)正常的指示。當(dāng)單片機(jī)系統(tǒng)出現(xiàn)故障時(shí),可以利用跑馬燈顯示當(dāng)前的故障碼,對故障做出診斷。此外,跑馬燈在單片機(jī)的調(diào)試過程中也非常有用,可以在不同時(shí)候?qū)⑿枰募拇嫫骰蜿P(guān)鍵變量的值顯示在跑馬燈上,提供需要的調(diào)試信息。關(guān)鍵詞:音樂跑馬燈;at89c52單片機(jī);74ls245驅(qū)動(dòng)芯片;led發(fā)光二極管1 設(shè)計(jì)概述11.1設(shè)計(jì)目的11.2設(shè)計(jì)作用11.3設(shè)計(jì)要求11.4系統(tǒng)設(shè)計(jì)框圖12元器件介紹32.1at89c52單片機(jī)32.2驅(qū)動(dòng)芯片74ls24532.3其他元件及功能43 硬件電路設(shè)計(jì)63.1單片機(jī)最小系統(tǒng)63.2led顯示部分73.3按鈕控制部分73.4數(shù)碼管顯示電路83.5蜂鳴器部分8 3.6系統(tǒng)總電路圖94 軟件設(shè)計(jì)104.1 程序流程圖104.2 程序設(shè)計(jì)105 結(jié)束語33參考文獻(xiàn)341 設(shè)計(jì)概述1.1設(shè)計(jì)目的 利用所學(xué)單片機(jī)的理論知識(shí)進(jìn)行軟硬件整體設(shè)計(jì),培養(yǎng)學(xué)生分析、解決問題的能力,鍛煉學(xué)生理論聯(lián)系實(shí)際、綜合應(yīng)用的能力。通過實(shí)踐動(dòng)手制作硬件和軟件,綜合應(yīng)用本學(xué)期所學(xué)的單片機(jī)知識(shí),達(dá)到加深學(xué)習(xí)該專業(yè)知識(shí)的目的。1.2設(shè)計(jì)作用跑馬燈是一種能像馬兒一樣跑的燈,就是利用單片機(jī)控制led燈的閃爍方式使其就像馬兒奔跑時(shí)馬蹄的起落。音樂跑馬燈,就是在普通跑馬燈的基礎(chǔ)上加入了音樂,并通過喇叭將其在適當(dāng)?shù)臅r(shí)刻播放出來。單片機(jī)的音樂跑馬燈由16個(gè)led發(fā)光二極管組成,在單片機(jī)系統(tǒng)中一般用來指示和顯示單片機(jī)的運(yùn)行狀態(tài)。通過程序控制使得單片機(jī)不同狀態(tài)下的16個(gè)led發(fā)光二級(jí)管顯示不同的組合,以此顯示單片機(jī)的工作狀態(tài),也可檢查單片機(jī)是否發(fā)生故障。當(dāng)然,在實(shí)際生活中音樂跑馬燈還有許多用處,其可以應(yīng)用于各種建筑物、大樓、酒吧、ktv和夜總會(huì)等娛樂場所,可以制作出各種各樣的炫目多彩的霓虹燈,為夜晚帶來不一樣的光彩。1.3設(shè)計(jì)要求 有16個(gè)發(fā)光二極管做跑馬燈,其中跑馬燈有16種燈亮模式。 有專門的鍵盤用以切換跑馬燈的模式,并且對于任何一種跑馬燈模式都可以對亮燈速度進(jìn)行控制。 每一種跑馬燈模式用led數(shù)碼管進(jìn)行顯示。 當(dāng)跑馬燈處于一種模式時(shí),伴隨的音樂響起,音樂有3首,并可以對其進(jìn)行切換。1.4系統(tǒng)設(shè)計(jì)框圖基于at89c52單片機(jī)的多模式帶音樂的跑馬燈控制系統(tǒng)由電路電源、單片機(jī)主控電路、模式切換以及調(diào)速按鍵控制電路、led數(shù)碼管顯示電路和十六個(gè)發(fā)光二極管的跑馬的電路幾部分組成,系統(tǒng)框圖如圖1.1所示。 圖1.1系統(tǒng)設(shè)計(jì)框圖2元器件介紹2.1at89c52單片機(jī)at89c52是51系列單片機(jī)的一個(gè)型號(hào),它是atmel公司生產(chǎn)的。at89c52是一個(gè)低電壓,高性能cmos 8位單片機(jī),片內(nèi)含8k bytes的可反復(fù)擦寫的flash只讀程序存儲(chǔ)器和256 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(ram),器件采用atmel公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)mcs-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和flash存儲(chǔ)單元,功能強(qiáng)大的at89c52單片機(jī)可為您提供許多較復(fù)雜系統(tǒng)控制應(yīng)用場合。at89c52有40個(gè)引腳,32個(gè)外部雙向輸入/輸出(i/o)端口,同時(shí)內(nèi)含2個(gè)外中斷口,3個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,2個(gè)讀寫口線,at89c52可以按照常規(guī)方法進(jìn)行編程,也可以在線編程。其將通用的微處理器和flash存儲(chǔ)器結(jié)合在一起,特別是可反復(fù)擦寫的flash存儲(chǔ)器可有效地降低開發(fā)成本。at89c52單片機(jī)如圖2.1所示。 圖2.1 at89c52單片機(jī)2.2驅(qū)動(dòng)芯片74ls24574ls245是我們常用的芯片,用來驅(qū)動(dòng)led或者其他的設(shè)備,它是8路同相三態(tài)雙向總線收發(fā)器,可雙向傳輸數(shù)據(jù)。74ls245還具有雙向三態(tài)功能,既可以輸出,也可以輸入數(shù)據(jù)。當(dāng)at89c52單片機(jī)的p0口總線負(fù)載達(dá)到或超過p0最大負(fù)載能力時(shí),必須接入74ls245等總線驅(qū)動(dòng)器。當(dāng)片選端低電平有效時(shí),=“0”,信號(hào)由 b 向 a 傳輸;ab=“1”,信號(hào)由 a 向 b 傳輸;(發(fā)送)當(dāng)ce為高電平時(shí),a、b均為高阻態(tài)。由于p2口始終輸出地址的高8位,接口時(shí)74ls245的三態(tài)控制端1g和2g接地,p2口與驅(qū)動(dòng)器輸入線對應(yīng)相連。p0口與74ls245輸入端相連, 端接地,保證數(shù)據(jù)線暢通。8051的和相與后接ab/,使得rd和psen有效時(shí),74ls245輸入(p0.1d1),其它時(shí)間處于輸出(p0.1d1)。74ls245驅(qū)動(dòng)芯片如圖2.2所示。圖2.2 74ls245驅(qū)動(dòng)芯片2.3其他元件及功能 led發(fā)光二極管:指示和顯單片機(jī)狀態(tài)。 揚(yáng)聲器:播放歌曲。 按鈕:模式按鈕用于切換單片機(jī)工作模式,加速按鈕用于加快led燈的閃爍頻率,減速按鈕用于減緩led燈的閃爍頻率,復(fù)位按鈕用于人工復(fù)位。 數(shù)碼管:用于顯示單片機(jī)當(dāng)前處于何種模式。 晶體振蕩器:用于構(gòu)成單片機(jī)的復(fù)位電路。 電容:用于構(gòu)成單片機(jī)的復(fù)位電路。 電阻:限流分壓作用,是電路正常工作并保護(hù)電路。元件清單如表2.1所示。表2.1 元件清單元 件數(shù) 量元 件數(shù) 量at89c521電容20f174ls2453電阻47016led發(fā)光二極管16電阻1007揚(yáng)聲器1電阻4801按鈕4電源+5v8數(shù)碼管1晶體振蕩器1電容30pf23 硬件電路設(shè)計(jì)3.1單片機(jī)最小系統(tǒng)單片機(jī)最小系統(tǒng)或者稱為最小應(yīng)用系統(tǒng),素質(zhì)用最少的元件組成的單片機(jī)可以工作的系統(tǒng),對51系列單片機(jī)來說,最小系統(tǒng)一般應(yīng)該包括:單片機(jī)、復(fù)位電路、晶振電路。復(fù)位電路:該復(fù)位電路采用手動(dòng)復(fù)位和按鍵復(fù)位,所謂手動(dòng)復(fù)位,是指通過接通一按鈕開關(guān),使單片機(jī)進(jìn)入復(fù)位狀態(tài),使rst獲得高電平,該方法可實(shí)現(xiàn)比較快速的復(fù)位。當(dāng)然,若不按下按鈕,需等待電容充完電后使得rst獲得高電平復(fù)位,復(fù)位電路如圖3.1所示。圖3.1復(fù)位電路晶振電路:8051單片機(jī)的時(shí)鐘信號(hào)通常用兩種電路形式電路得到:內(nèi)部震蕩方式和外部中斷方式。在引腳xtal1和xtal2外部接晶振電路器(簡稱晶振)或陶瓷晶振器,就構(gòu)成了內(nèi)部晶振方式。由于單片機(jī)內(nèi)部有一個(gè)高增益反相放大器,當(dāng)外接晶振后,就構(gòu)成了自激振蕩器并產(chǎn)生振蕩時(shí)鐘脈沖。內(nèi)部振蕩方式的外部電路如下圖所示。其電容值一般在530pf,晶振頻率的典型值為12mhz,采用6mhz的情況也比較多。內(nèi)部振蕩方式所得的時(shí)鐘信號(hào)比較穩(wěn)定,實(shí)用電路使用較多。晶振電路圖如圖3.2所示。圖3.2 晶振電路3.2led顯示部分顯示部分,用十六個(gè)發(fā)光二極管通過總線和74ls245驅(qū)動(dòng)芯片分別接到了at89c52單片機(jī)的p0和p1口。通過程序控制p0和p1的十六個(gè)端口按一定方式一次為低電平點(diǎn)亮端口led。若把p0口當(dāng)作了通用的i/o口,則需要加上拉電阻,可是我們所采用的是使用總線方式輸出因此不需要上拉電阻。本設(shè)計(jì)采用的是發(fā)光二極管陽極接電源,因此要求p0口p1口輸出低電平時(shí),二極管才會(huì)發(fā)光。led顯示部分如圖3.3所示。圖3.3 led顯示部分3.3按鈕控制部分用一個(gè)按鈕進(jìn)行模式的切換,即用該按鈕控制多種不同的亮燈模式,分別有16種模式,從模式“0”至模式“f”,開啟模式“f”是有音樂放出。用一個(gè)按鈕(加速按鈕)進(jìn)行發(fā)光二極管亮燈加速的調(diào)節(jié),在第“f”模式時(shí)該按鈕則可進(jìn)行歌曲的切換。用一個(gè)按鈕(減速按鈕)進(jìn)行發(fā)光二極管亮燈減速的調(diào)節(jié),在第9模式時(shí)該按鈕則可進(jìn)行歌曲的切換。按鈕控制部分如圖3.4所示。圖3.4 按鈕控制部分3.4數(shù)碼管顯示電路數(shù)碼管上分別顯示0f十六個(gè)數(shù)字,分別代表十六種模式。采用共陽極連接,即數(shù)碼管的af端要輸入低電平時(shí)內(nèi)部二極管才導(dǎo)通。在數(shù)碼管每個(gè)端口與74ls24 5驅(qū)動(dòng)芯片與數(shù)碼管之間連上100的電阻。數(shù)碼管顯示電路的具體硬件設(shè)計(jì)如圖3.5所示。圖3.5 數(shù)碼管顯示電路3.5蜂鳴器部分蜂鳴器是一種將電信號(hào)轉(zhuǎn)換成聲音信號(hào)的電聲元件。確切的說,蜂鳴器工作實(shí)際上是把一定范圍內(nèi)的音頻電功率訊號(hào)通過換能方式轉(zhuǎn)變失真小并且有足夠聲壓級(jí)的可聽聲音。本課程設(shè)計(jì)直接將蜂鳴器街道單片機(jī)的p2.6端口,蜂鳴器具體電路如圖3.6所示。圖3.6 蜂鳴器電路3.6系統(tǒng)總電路圖音樂跑馬燈的總電路圖如3.7所示。圖3.7 音樂跑馬燈總電路3.7操作說明在仿真軟件中,按下屏幕左下角開始按鍵時(shí),數(shù)碼管顯示為“0”,發(fā)光二極管以一定方式開始閃爍,此時(shí)按下模式按鈕使得數(shù)碼管顯示為“1”時(shí),發(fā)光二極管以一另種方式開始閃爍。此時(shí),若按加速按鈕,則加快了發(fā)光二極管的閃爍速度,有4種不同的速度。當(dāng)加速到最大速度時(shí),再按加速按鈕則無法繼續(xù)加速,此時(shí)可以按減速按鈕進(jìn)行減速。以此類推,模式“1”到模式“e”,每種模式都給有一種閃爍方式。當(dāng)繼續(xù)按模式按鈕使的模式轉(zhuǎn)換為模式“f”時(shí),蜂鳴器開始放歌,發(fā)光二極管按照音樂音調(diào)變動(dòng)閃爍。此時(shí)的加速按鈕可以進(jìn)行歌曲的切換,按一次按鈕換一首歌。4 軟件設(shè)計(jì)4.1 程序流程圖該程序采用兩個(gè)程序編寫:第一個(gè)位單片機(jī)主程序,作用是使單片機(jī)完成相應(yīng)上電功能;第二個(gè)是音樂產(chǎn)生程序,在第一個(gè)程序中包含第二個(gè)程序的頭文件即可。程序流程圖如圖4.1及4.2所示。 圖4.1 主程序 圖4.2 音樂程序流程圖4.2 程序設(shè)計(jì)#include /包括一個(gè)52標(biāo)準(zhǔn)的內(nèi)核頭文件/#include unsigned char runmode;void delay1ms(unsigned int count) /延時(shí)子程序 unsigned int i,j; for(i=0;icount;i+) for(j=0;j1200;j+); unsigned char code leddisplaycode=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff; /led數(shù)碼管void display(unsigned char value) p3=leddisplaycode value; /數(shù)值輸出至ledvoid ledflash(unsigned char count) unsigned char i; bit flag; for(i=0;i8)&0x00ff);void initialcpu(void) runmode=0x00; timer0count=0; systemspeedindex=4; p1=0x00; p0=0x00; p2=0xff; p3=0x00; delay1ms(500); p1=0xff; p0=0xff; p2=0xff; p3=0xff; setspeed(systemspeedindex); display(runmode);unsigned int ledindex=0;bit leddirection=1,ledflag=1;void mode_0(void) ledshow(0x0001ledindex); ledindex=(ledindex+1)%16;void mode_2(void) if(leddirection) ledshow(0x0001ledindex); if(ledindex=15) leddirection=!leddirection; ledindex=(ledindex+1)%16;void mode_3(void) if(leddirection) ledshow(0x0001ledindex); if(ledindex=15) leddirection=!leddirection; ledindex=(ledindex+1)%16;void mode_4(void) if(leddirection) if(ledflag) ledshow(0xfffeledindex); else if(ledflag) ledshow(0x7fffledindex); else ledshow(0xfffeledindex); if(ledindex=15) leddirection=!leddirection; if(leddirection) ledflag=!ledflag; ledindex=(ledindex+1)%16;void mode_5(void) if(leddirection) ledshow(0x000fledindex); if(ledindex=15) leddirection=!leddirection; ledindex=(ledindex+1)%16;void mode_6(void) if(leddirection) ledshow(0x000fledindex); if(ledindex=15) leddirection=!leddirection; ledindex=(ledindex+1)%16;void mode_7(void) if(leddirection) ledshow(0x003fledindex); if(ledindex=9) leddirection=!leddirection; ledindex=(ledindex+1)%10;void mode_8(void) ledshow(+ledindex);void mode_9(void) ledshow(0x0003ledindex); ledindex=(ledindex+1)%16;void mode_b(void) if(leddirection) ledshow(0x0003ledindex); if(ledindex=15) leddirection=!leddirection; ledindex=(ledindex+1)%16; void mode_c(void) if(leddirection) ledshow(0x8080ledindex); else ledshow(0x0101ledindex); if(ledindex=7) leddirection=!leddirection; ledindex=(ledindex+1)%8;void mode_d(void) if(leddirection) ledshow(0x1111ledindex); if(ledindex=3) leddirection=!leddirection; ledindex=(ledindex+1)%4;void mode_e(void) if(leddirection) ledshow(0x5555ledindex); if(ledindex=3) leddirection=!leddirection; ledindex=(ledindex+1)%4;void timer0eventrun(void)/模式選擇 if(runmode=0x00) mode_0(); else if(runmode=0x01) mode_1(); else if(runmode=0x02) mode_2(); else if(runmode=0x03) mode_3(); else if(runmode=0x04) mode_4(); else if(runmode=0x05) mode_5(); else if(runmode=0x06) mode_6(); else if(runmode=0x07) mode_7(); else if(runmode=0x08) mode_8(); else if(runmode=0x09) mode_9(); else if(runmode=0x0a) mode_a(); else if(runmode=0x0b) mode_b(); else if(runmode=0x0c) mode_c(); else if(runmode=0x0d) mode_d(); else if(runmode=0x0e) mode_e();void timer2(void) interrupt 5 using 3 tf2=0; if(+timer0count=systemspeed) timer0count=0; timer0eventrun(); unsigned char musicindex=0;int musicnumber=3;void keydispose(unsigned char key) if(key&0x01) leddirection=1; ledindex=0; ledflag=1; runmode=(runmode+1)%16; display(runmode); if(runmode=0x0f) tr2=0; else tr2=1; if(key&0x02) if(runmode=0x0f) musicindex=(musicindex+musicnumber-1)%musicnumber; else if(systemspeedindex0) -systemspeedindex; setspeed(systemspeedindex); else ledflash(6); if(key&0x04) if(runmode=0x0f) musicindex=(musicnumber+1)%musicnumber; else if(systemspeedindex3) +systemspeedindex; setspeed(systemspeedindex); else ledflash(6); unsigned char code music_1=0x17,0x02,0x17,0x03,0x18,0x03,0x19,0x02,0x15,0x03,0x16,0x03,0x17,0x03,0x17,0x03,0x17,0x03,0x18,0x03,0x19,0x02,0x16,0x03,0x17,0x03,0x18,0x02,0x18,0x03,0x17,0x03,0x15,0x02,0x18,0x03,0x17,0x03,0x18,0x02,0x10,0x03,0x15,0x03,0x16,0x02,0x15,0x03,0x16,0x03,0x17,0x02,0x17,0x03,0x18,0x03,0x19,0x02,0x1a,0x03,0x1b,0x03,0x1f,0x03,0x1f,0x03,0x17,0x03,0x18,0x03,0x19,0x02,0x16,0x03,0x17,0x03,0x18,0x03,0x17,0x03,0x18,0x03,0x1f,0x03,0x1f,0x02,0x16,0x03,0x17,0x03,0x18,0x03,0x17,0x03,0x18,0x03,0x20,0x03,0x20,0x02,0x1f,0x03,0x1b,0x03,0x1f,0x66,0x20,0x03,0x21,0x03,0x20,0x03,0x1f,0x03,0x1b,0x03,0x1f,0x66,0x1f,0x03,0x1b,0x03,0x19,0x03,0x1b,0x03,0x15,0x03,0x1a,0x66,0x1a,0x03,0x19,0x03,0x15,0x03,0x15,0x03,0x17,0x03,0x16,0x66,0x17,0x04,0x18,0x04,0x18,0x03,0x19,0x03,0x1f,0x03,0x1b,0x03,0x1f,0x66,0x20,0x03,0x21,0x03,0x20,0x03,0x1f,0x03,0x1b,0x03,0x1f,0x66,0x1f,0x03,0x1b,0x03,0x19,0x03,0x19,0x03,0x15,0x03,0x1a,0x66,0x1a,0x03,0x19,0x03,0x19,0x03,0x1f,0x03,0x1b,0x03,0x1f,0x00,0x1a,0x03,0x1a,0x03,0x1a,0x03,0x1b,0x03,0x1b,0x03,0x1a,0x03,0x19,0x03,0x19,0x02,0x17,0x03,0x15,0x17,0x15,0x03,0x16,0x03,0x17,0x03,0x18,0x03,0x17,0x04,0x18,0x0e,0x18,0x03,0x17,0x04,0x18,0x0e,0x18,0x66,0x17,0x03,0x18,0x03,0x17,0x03,0x18,0x03,0x20,0x03,0x20,0x02,0x1f,0x03,0x1b,0x03,0x1f,0x66,0x20,0x03,0x21,0x03,0x20,0x03,0x1f,0x03,0x1b,0x03,0x1f,0x66,0x1f,0x04,0x1b,0x0e,0x1b,0x03,0x19,0x03,0x19,0x03,0x15,0x03,0x1a,0x66,0x1a,0x03,0x19,0x03,0x15,0x03,0x15,0x03,0x17,0x03,0x16,0x66,0x17,0x04,0x18,0x04,0x18,0x03,0x19,0x03,0x1f,0x03,0x1b,0x03,0x1f,0x66,0x20,0x03,0x21,0x03,0x20,0x03,0x1f,0x03,0x1b,0x03,0x1f,0x66,0x1f,0x03,0x1b,0x03,0x19,0x03,0x19,0x03,0x15,0x03,0x1a,0x66,0x1a,0x03,0x19,0x03,0x19,0x03,0x1f,0x03,0x1b,0x03,0x1f,0x00,0x18,0x02,0x18,0x03,0x1a,0x03,0x19,0x0d,0x15,0x03,0x15,0x02,0x18,0x66,0x16,0x02,0x17,0x02,0x15,0x00,0x00,0x03;unsigned char code music_2=0x0f,0x01,0x15,0x02,0x16,0x02,0x17,0x66,0x18,0x03,0x17,0x02,0x15,0x02,0x16,0x01,0x15,0x02,0x10,0x02,0x15,0x00,0x0f,0x01,0x15,0x02,0x16,0x02,0x17,0x02,0x17,0x03,0x18,0x03,0x19,0x02,0x15,0x02,0x18,0x66,0x17,0x03,0x19,0x02,0x16,0x03,0x17,0x03,0x16,0x00,0x17,0x01,0x19,0x22,0x1b,0x02,0x1b,0x70,0x1a,0x03,0x1a,0x01,0x19,0x02,0x19,0x03,0x1a,0x03,0x1b,0x02,0x1a,0x0d,0x19,0x03,0x17,0x00,0x18,0x66,0x18,0x03,0x19,0x02,0x1a,0x03,0x19,0x0c,0x18,0x0d,0x17,0x03,0x16,0x01,0x11,0x02,0x11,0x03,0x10,0x03,0x0f,0x0c,0x10,0x02,0x15,0x00,0x1f,0x01,0x1a,0x01,0x18,0x66,0x19,0x03,0x1a,0x01,0x1b,0x02,0x1b,0x03,0x1b,0x03,0x1b,0x0c,0x1a,0x0d,0x19,0x03,0x17,0x00,0x1f,0x01,0x1a,0x01,0x18,0x66,0x19,0x33,0x1a,0x01,0x10,0x02,0x10,0x03,0x10,0x03,0x1a,0x0c,0x18,0x0d,0x17,0x03,0x16,0x00,0x0f,0x01,0x15,0x02,0x16,0x02,0x17,0x70,0x18,0x03,0x17,0x02,0x15,0x03,0x15,0x03,0x16,0x66,0x16,0x03,0x16,0x02,0x16,0x03,0x15,0x03,0x10,0x02,0x10,0x01,0x11,0x01,0x11,0x66,0x10,0x03,0x0f,0x0c,0x1a,0x02,0x19,0x02,0x16,0x03,0x16,0x03,0x18,0x66,0x18,0x03,0x18,0x02,0x17,0x03,0x16,0x03,0x19,0x00,0x00,0x00;unsigned char code music_3=0x17,0x03,0x16,0x03,0x17,0x01,0x16,0x03,0x17,0x03,0x16,0x03,0x15,0x01,0x10,0x03,0x15,0x03,0x16,0x02,0x16,0x0d,0x17,0x03,0x16,0x03,0x15,0x03,0x10,0x03,0x10,0x0e,0x15,0x04,0x0f,0x01,0x17,0x03,0x16,0x03,0x17,0x01,0x16,0x03,0x17,0x03,0x16,0x03,0x15,0x01,0x10,0x03,0x15,0x03,0x16,0x02,0x16,0x0d,0x17,0x03,0x16,0x03,0x15,0x03,0x10,0x03,0x15,0x03,0x16,0x01,0x17,0x03,0x16,0x03,0x17,0x01,0x16,0x03,0x17,0x03,0x16,0x03,0x15,0x01,0x10,0x03,0x15,0x03,0x16,0x02,0x16,0x0d,0x17,0x03,0x16,0x03,0x15,0x03,0x10,0x03,0x10,0x0e,0x15,0x04,0x0f,0x01,0x17,0x03,0x19,0x03,0x19,0x01,0x19,0x03,0x1a,0x03,0x19,0x03,0x17,0x01,0x16,0x03,0x16,0x03,0x16,0x02,0x16,0x0d,0x17,0x03,0x16,0x03,0x15,0x03,0x10,0x03,0x10,0x0d,0x15,0x00,0x19,0x03,0x19,0x03,0x1a,0x03,0x1f,0x03,0x1b,0x03,0x1b,0x03,0x1a,0x03,0x17,0x0d,0x16,0x03,0x16,0x03,0x16,0x0d,0x17,0x01,0x17,0x03,0x17,0x03,0x19,0x03,0x1a,0x02,0x1a,0x02,0x10,0x03,0x17,0x0d,0x16,0x03,0x16,0x01,0x17,0x03,0x19,0x03,0x19,0x03,0x17,0x03,0x19,0x02,0x1f,0x02,0x1b,0x03,0x1a,0x03,0x1a,0x0e,0x1b,0x04,0x17,0x02,0x1a,0x03,0x1a,0x03,0x1a,0x0e,0x1b,0x04,0x1a,0x03,0x19,0x03,0x17,0x03,0x16,0x03,0x17,0x0d,0x16,0x03,0x17,0x03,0x19,0x01,0x19,0x03,0x19,0x03,0x1a,0x03,0x1f,0x03,0x1b,0x03,0x1b,0x03,0x1a,0x03,0x17,0x0d,0x16,0x03,0x16,0x03,0x16,0x03,0x17,0x01,0x17,0x03,0x17,0x03,0x19,0x03,0x1a,0x02,0x1a,0x02,0x10,0x03,0x17,0x0d,0x16,0x03,0x16,0x01,0x17,0x03,0x19,0x03,0x19,0x03,0x17,0x03,0x19,0x03,0x1f,0x02,0x1b,0x03,0x1a,0x03,0x1a,0x0e,0x1b,0x04,0x17,0x02,0x1a,0x03,0x1a,0x03,0x1a,0x0e,0x1b,0x04,0x17,0x16,0x1a,0x03,0x1a,0x03,0x1a,0x0e,0x1b,0x04,0x1a,0x03,0x19,0x03,0x17,0x03,0x16,0x03,0x0f,0x02,0x10,0x03,0x15,0x00,0x00,0x00;unsigned char * selectmusic(unsigned char soundindex) unsigned char * musicaddress=0; switch(soundindex) case 0x00:musicaddress=&music_10;break; case 0x01:musicaddress=&music_20;break; case 0x02:musicaddress=&music_30;break; case 0x03:break; case 0x04:break; case 0x05:break; default:break; return musicaddress;#ifndef _soundplay_h_revision_first_#define _soundplay_h_revision_first_#define system_osc 12000000 /定義晶振頻率#define sound_space 4/5 /定義普通音符演奏長度分率,每四分音符間隔#define musicnumber 3 /歌曲的數(shù)目sbit beepio=p26; /定義輸出引腳extern void ledshow(unsigned int ledstatus);extern unsigned char getkey(void);extern void keydispose(unsigned char key);extern
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2025學(xué)年廣西欽州市欽州港經(jīng)濟(jì)技術(shù)開發(fā)區(qū)中學(xué)高考物理倒計(jì)時(shí)模擬卷含解析
- 2025一季度冷藏集裝箱海運(yùn)鹽霧腐蝕防護(hù)方案
- 制作商家廣告合同樣本
- 腐蝕試驗(yàn)設(shè)備企業(yè)ESG實(shí)踐與創(chuàng)新戰(zhàn)略研究報(bào)告
- 電動(dòng)客車企業(yè)縣域市場拓展與下沉戰(zhàn)略研究報(bào)告
- 含釩生鐵企業(yè)ESG實(shí)踐與創(chuàng)新戰(zhàn)略研究報(bào)告
- 施工升降機(jī)企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級(jí)戰(zhàn)略研究報(bào)告
- 結(jié)構(gòu)性金屬制品企業(yè)ESG實(shí)踐與創(chuàng)新戰(zhàn)略研究報(bào)告
- 粘膠后熔解機(jī)企業(yè)ESG實(shí)踐與創(chuàng)新戰(zhàn)略研究報(bào)告
- 雙模輪胎定型硫化機(jī)企業(yè)ESG實(shí)踐與創(chuàng)新戰(zhàn)略研究報(bào)告
- 2024年廣東省中考?xì)v史試卷試題真題及答案(精校打印版)
- JJG 705-2014液相色譜儀行業(yè)標(biāo)準(zhǔn)
- YY/T 0331-2024脫脂棉紗布、脫脂棉粘膠混紡紗布的性能要求和試驗(yàn)方法
- 計(jì)劃書綠色背景
- 北師大版數(shù)學(xué)三年級(jí)下冊-第3單元《找規(guī)律》教案
- 西安市西繞城高速路上橋群機(jī)械拆除工程施工方案樣本
- 中國商飛公司招聘筆試題
- 《含能材料與應(yīng)用》課件
- 土地管理法實(shí)施條例考試試題
- 真實(shí)的PBL真實(shí)的挑戰(zhàn):項(xiàng)目式學(xué)習(xí)設(shè)計(jì)指南
- 水果批發(fā)市場項(xiàng)目商業(yè)計(jì)劃書
評(píng)論
0/150
提交評(píng)論