畢業(yè)設(shè)計(jì)硬件部分_第1頁(yè)
畢業(yè)設(shè)計(jì)硬件部分_第2頁(yè)
畢業(yè)設(shè)計(jì)硬件部分_第3頁(yè)
畢業(yè)設(shè)計(jì)硬件部分_第4頁(yè)
畢業(yè)設(shè)計(jì)硬件部分_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、天津冶金職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)基于AT89S51的音樂盒設(shè)計(jì)系 部 專 業(yè) 班 級(jí) 學(xué)生姓名 指導(dǎo)老師 2011年3月31日摘要單片機(jī)具有強(qiáng)大的控制功能和靈活的編程實(shí)現(xiàn)特性,它已經(jīng)溶入現(xiàn)代人們的生活中,成為不可替代的一部分。本系統(tǒng)是以51系列單片機(jī)AT89S52為主控制器,幾個(gè)按鍵、LED顯示管、揚(yáng)聲器組成。系統(tǒng)通過各按鍵的控制,基于可靠的硬件設(shè)計(jì)和精確而穩(wěn)定的軟件設(shè)計(jì),并同時(shí)能在數(shù)碼管上顯示當(dāng)前所播放歌曲順序的功能。系統(tǒng)完成顯示輸入信息、播放相應(yīng)音符等基本功能。本系統(tǒng)運(yùn)行穩(wěn)定,其優(yōu)點(diǎn)是硬件電路簡(jiǎn)單,軟件功能完善,控制系統(tǒng)可靠,性價(jià)比較高等,具有一定的實(shí)用和參考價(jià)值。用一塊AT89S52組成的最

2、小系統(tǒng)作為控制中心,編好程序燒錄進(jìn)單片機(jī)里,使I/O口產(chǎn)生一定頻率的方波,驅(qū)動(dòng)蜂鳴器,發(fā)出不同的音調(diào),從而演奏樂曲。輸出信號(hào)通過三極管放大,由一個(gè)蜂鳴器來(lái)表現(xiàn)信號(hào)的輸出。關(guān)鍵詞:?jiǎn)纹瑱C(jī);按鍵;顯示數(shù)碼管;播放歌曲。目錄摘要1 引言12 電路功能概述22.1 硬件系統(tǒng)結(jié)構(gòu)框圖22.2 時(shí)鐘電路32.3 單片機(jī)的復(fù)位及復(fù)位電路42.4 原理圖及說明6原理圖:6原理分析6元件介紹7 PCB板103 仿真、安裝和調(diào)試113.1.1 仿真圖113.1.2 仿真調(diào)試11總結(jié)13參考文獻(xiàn)14附錄:音樂程序151 引言隨著人們生活水平的不斷提高,單片機(jī)控制無(wú)疑是人們追求的目標(biāo)之一,它所給人帶來(lái)的方便也是毋庸置

3、疑的,其中智能音樂盒就是一個(gè)典型的例子,但人們對(duì)它的要求越來(lái)越高,要為現(xiàn)代人工作、生活、提供更好的更方便的服務(wù)就需要從單片機(jī)技術(shù)著手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。聲音是由物體振動(dòng)產(chǎn)生,正在發(fā)聲的物體叫聲源。振動(dòng)的頻率高,為高音;振動(dòng)的頻率低,為低音。人耳比較容易辨識(shí)的聲音頻率范圍是20Hz到20,000Hz之間,一般音響電路是用正弦波信號(hào)驅(qū)動(dòng)喇叭,從而產(chǎn)生悅耳的音樂;在數(shù)字電路里,則是用數(shù)字脈沖信號(hào)信號(hào)驅(qū)動(dòng)喇叭,從而產(chǎn)生聲音。如果聲音的頻率相同,人類耳朵很難區(qū)分哪個(gè)是脈沖信號(hào)產(chǎn)生的聲音,哪個(gè)是正弦波信號(hào)產(chǎn)生的聲音。本設(shè)計(jì)所介紹的智能音樂盒,具有使用方便,音質(zhì)效果良好,穩(wěn)定性好,其輸

4、出溫度采用數(shù)字顯示,主要用于生日派對(duì),家庭娛樂,兒童玩具,該設(shè)計(jì)控制器使用單片機(jī)AT89C51,具有五個(gè)功能鍵來(lái)選擇音樂的播放與復(fù)位,用三極管組成放大電路,實(shí)現(xiàn)驅(qū)動(dòng)蜂鳴器播放音樂的功能。2 電路功能概述本設(shè)計(jì)主控芯片采用89S51單片機(jī),采用C語(yǔ)言進(jìn)行編程,根據(jù)代碼產(chǎn)生一定頻率的脈沖,驅(qū)動(dòng)蜂鳴器,放出音。本系統(tǒng)功能鍵三個(gè)按鍵組成,其中A號(hào)和B號(hào)鍵是歌曲序列號(hào)鍵,可以直接選擇音樂;A號(hào)鍵選擇第一首歌,B號(hào)鍵選擇第二首歌,C號(hào)鍵復(fù)位。2.1 硬件系統(tǒng)結(jié)構(gòu)框圖智能音樂盒的系統(tǒng)結(jié)構(gòu)以AT89S51單片機(jī)為控制核心,加上三個(gè)按鍵、放大電路、時(shí)鐘電路、蜂鳴器等組成。系統(tǒng)組成框圖如圖:按鍵時(shí)鐘電路51單片機(jī)

5、放大電路2.2 時(shí)鐘電路時(shí)鐘電路用于產(chǎn)生單片機(jī)工作時(shí)所必需的時(shí)鐘控制信號(hào)。MCS51單片機(jī)的內(nèi)部電路在時(shí)鐘信號(hào)的控制下,嚴(yán)格地按時(shí)序執(zhí)行指令進(jìn)行工作。時(shí)鐘頻率直接影響單片機(jī)的速度,時(shí)鐘電路的質(zhì)量也直接影響單片機(jī)系統(tǒng)的穩(wěn)定性。單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器,該高增益反相放大器的輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2。這兩個(gè)引腳跨接石英晶體振蕩器(簡(jiǎn)稱晶振)和微調(diào)電容,就構(gòu)成一個(gè)穩(wěn)定的自激振蕩器,電路中我們采用電容C1和C2為30PF,石英晶體的振蕩頻率選用12MHz,如圖:2.3 單片機(jī)的復(fù)位及復(fù)位電路復(fù)位狀態(tài):計(jì)算機(jī)在啟動(dòng)運(yùn)行時(shí)都需要復(fù)位,復(fù)位使中央處理器CPU和

6、系統(tǒng)中的其他器件都處于一種初始狀態(tài),并從這個(gè)初始狀態(tài)工作。MCS-51系列單片機(jī)有一個(gè)復(fù)位引腳RST。在MCS-51系列單片機(jī)的RST引腳上輸入一個(gè)高電平信號(hào),該高電平信號(hào)至少要維持兩個(gè)機(jī)器周期以上的時(shí)間,單片機(jī)被復(fù)位。復(fù)位電路:與其他計(jì)算機(jī)一樣,MCS-51單片機(jī)系統(tǒng)的復(fù)位方法有上電自動(dòng)復(fù)位、手動(dòng)復(fù)位以及“看門狗”復(fù)位等。此最小系統(tǒng)采用手動(dòng)復(fù)位電路。在系統(tǒng)運(yùn)行過程中,有時(shí)可能對(duì)系統(tǒng)需要進(jìn)行復(fù)位,為避免對(duì)硬件經(jīng)常加電和斷電造成的損害,我們可以采用手動(dòng)復(fù)位。這種方法是將一個(gè)開關(guān)串聯(lián)一只電阻后,再并聯(lián)于電容C的兩端,在系統(tǒng)運(yùn)行過程中需要復(fù)位時(shí)只要使開關(guān)閉合,在RST引腳上就會(huì)出現(xiàn)一定時(shí)間的高電平信

7、號(hào),從而使單片機(jī)實(shí)現(xiàn)復(fù)位。復(fù)位電路如圖:2.4 原理圖及說明原理圖:使用Protel 99 SE繪制原理圖,繪制相應(yīng)的原件封裝,進(jìn)行電氣規(guī)則檢查并生成原件清單。原理分析:(1)原理圖說明:當(dāng)鍵盤有鍵按下時(shí),判斷鍵值,啟動(dòng)計(jì)數(shù)器T0,產(chǎn)生一定頻率的脈沖,驅(qū)動(dòng)蜂鳴器,放出樂曲。同時(shí)啟動(dòng)定時(shí)器T1,顯示歌曲號(hào)。.硬件電路中用、(外部中斷0、1輸入端P1.0 P1.1)分別接S1、S2作為上、下一曲的功能鍵。.用P0.0-P0.7控制七段碼a,b,c,d,e,f,g。.用P1.4口控制喇叭。.電路為12MHZ晶振頻率工作,起振電路中C1,C2均為30pf。元件介紹:.AT89S51元件介紹AT89S5

8、1是一個(gè)低功耗,高性能CMOS 8位單片機(jī),片內(nèi)含4k Bytes ISP(In-system programmable)的可反復(fù)擦寫1000次的Flash只讀程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲(chǔ)單元,功能強(qiáng)大的微型計(jì)算機(jī)的AT89S51可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價(jià)比的解決方案。AT89S51具有如下特點(diǎn):40個(gè)引腳,4k Bytes Flash片內(nèi)程序存儲(chǔ)器,128 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),32個(gè)外部雙向輸入/輸出(I/O)口,5個(gè)中

9、斷優(yōu)先級(jí)2層中斷嵌套中斷,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,看門狗(WDT)電路,片內(nèi)時(shí)鐘振蕩器。 此外,AT89S51設(shè)計(jì)和配置了振蕩頻率可為0Hz并可通過軟件設(shè)置省電模式??臻e模式下,CPU暫停工作,而RAM定時(shí)計(jì)數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存RAM的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復(fù)位。同時(shí)該芯片還具有PDIP、TQFP和PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。.AT89S51引腳的排列、名稱、功能和用法AT89S51引腳的排列如圖:引腳介紹:VCC:供電電壓。 GND:接地。 P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每

10、腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。 P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)

11、P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。 P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是

12、由于上拉的緣故。 P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口) P3.2 /INT0(外部中斷0) P3.3 /INT1(外部中斷1) P3.4 T0(記時(shí)器0外部輸入) P3.5 T1(記時(shí)器1外部輸入) P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫選通) P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通) P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。 I/O口作為輸入口時(shí)有兩種工作方式,即所謂的讀端口與讀引腳。讀端口時(shí)實(shí)際上并不從外部讀入數(shù)據(jù),而是把端口鎖存器的內(nèi)容讀入到內(nèi)部總線,經(jīng)過某種運(yùn)算或變換后再寫回到端口鎖存器。只有讀端口時(shí)才真正地把外部的數(shù)據(jù)讀入到內(nèi)部總線。上面圖中的兩個(gè)三角形

13、表示的就是輸入緩沖器CPU將根據(jù)不同的指令分別發(fā)出讀端口或讀引腳信號(hào)以完成不同的操作。這是由硬件自動(dòng)完成的,不需要我們操心,1然后再實(shí)行讀引腳操作,否則就可能讀入出錯(cuò),為什么看上面的圖,如果不對(duì)端口置1端口鎖存器原來(lái)的狀態(tài)有可能為0Q端為0Q為1加到場(chǎng)效應(yīng)管柵極的信號(hào)為1,該場(chǎng)效應(yīng)管就導(dǎo)通對(duì)地呈現(xiàn)低阻抗,此時(shí)即使引腳上輸入的信號(hào)為1,也會(huì)因端口的低阻抗而使信號(hào)變低使得外加的1信號(hào)讀入后不一定是1。若先執(zhí)行置1操作,則可以使場(chǎng)效應(yīng)管截止引腳信號(hào)直接加到三態(tài)緩沖器中實(shí)現(xiàn)正確的讀入,由于在輸入操作時(shí)還必須附加一個(gè)準(zhǔn)備動(dòng)作,所以這類I/O口被稱為準(zhǔn)雙向口。89C51的P0/P1/P2/P3口作為輸入時(shí)

14、都是準(zhǔn)雙向口。接下來(lái)讓我們?cè)倏戳硪粋€(gè)問題,從圖中可以看出這四個(gè)端口還有一個(gè)差別,除了P1口外P0P2P3口都還有其他的功能。 RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。 ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX

15、,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。 /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。 /EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。

16、 XTAL2:來(lái)自反向振蕩器的輸出。 2.4.4 PCB板:3 仿真、安裝和調(diào)試 仿真圖 仿真調(diào)試按照上面設(shè)計(jì)的電路在proteus軟件內(nèi)畫圖,打開單片機(jī)軟件開發(fā)系統(tǒng)KEIL,選擇89S52單片機(jī),在其中編寫程序,運(yùn)行生成一個(gè)后綴名為HEX的文件,然后將該文件下載到仿真圖的AT89S52芯片中進(jìn)行仿真,觀察實(shí)驗(yàn)現(xiàn)象。仿真能實(shí)現(xiàn)播放音樂,按鍵播放歌曲等等功能,仿真成功后,安裝好實(shí)驗(yàn)板子,然后將音樂程序下載到電路板內(nèi),觀察結(jié)果,能實(shí)現(xiàn)播放音樂,按鍵播放歌曲等等功能。程序調(diào)試中出現(xiàn)的問題及解決的辦法:(1) 有是會(huì)出現(xiàn)程序一點(diǎn)錯(cuò)誤也沒有,但就是不能正常運(yùn)行的現(xiàn)象,最后我們發(fā)現(xiàn)是因?yàn)槌绦蛑杏械闹噶顣鴮?/p>

17、的不規(guī)范導(dǎo)致的,例如有的RET返回指令一定要按正確格式書寫或在兩行指令間最好不要留空行。(2) 程序中的跳轉(zhuǎn)指令的運(yùn)用很重要,為保險(xiǎn)起見,都用LJMP,我們就遇到過跳轉(zhuǎn)指令用錯(cuò)程序無(wú)法正常運(yùn)行的現(xiàn)象。當(dāng)用JNZ指令時(shí),跳轉(zhuǎn)范圍比較少,這是要用一個(gè)標(biāo)號(hào)中轉(zhuǎn)。(3) 編程時(shí)要注意,在程序開始時(shí),壓迫寫入各定時(shí)器中斷的入口地址。(4) 編程過程中要注意加注釋或分割線,否則,在程序過長(zhǎng)是容易變得很亂,不便于超找或更改。(5) 編程前要加流程圖,這樣會(huì)使思路清晰,例如數(shù)字音樂盒的設(shè)計(jì)思路完全可以按著MP3的工作方式列寫流程圖。(6) LCD計(jì)時(shí)正常顯示的解決辦法:a、 兩個(gè)定時(shí)器同時(shí)工作,存在中斷時(shí)序問

18、題,剛開始時(shí)我們吧定時(shí)器1設(shè)定在方式3,計(jì)250us,由于定時(shí)中斷過于頻繁,使CPU負(fù)載過大,導(dǎo)致蕓月不能正常播放,時(shí)間不能正常顯示。解決辦法:講定時(shí)器1設(shè)定在工作方式1,16位技術(shù),計(jì)50MS,效果有很大改觀,但還有問題。b、 當(dāng)音樂為全4拍起始時(shí),此時(shí)音樂節(jié)奏與定時(shí)器T1中斷頻率錯(cuò)開,LCD顯示和音樂播放都會(huì)好一些。c、 另外,在歌曲中,當(dāng)遇到一個(gè)音符發(fā)音為4拍,在編曲中為*CH,因時(shí)間較長(zhǎng),當(dāng)定時(shí)器T1此時(shí)來(lái)中斷時(shí),就會(huì)對(duì)歌曲播放產(chǎn)生影響,若改為發(fā)音一拍,中斷對(duì)歌曲播放影響減弱,但音樂效果變差。改進(jìn)方案:若采用可以定時(shí)時(shí)間更長(zhǎng)的單片機(jī),可以避免所有問題。總結(jié)拿到這個(gè)題目以后,看了這個(gè)題目

19、的要求,因?yàn)橄道镆笤谧鲈O(shè)計(jì)的同時(shí),還要做一個(gè)電路板,因?yàn)樽鲆粋€(gè)板子比較麻煩所以決定用練習(xí)版來(lái)代替。然后我開始找這個(gè)電路板,買到這塊板子對(duì)板子進(jìn)行焊接,調(diào)試等一系列的問題解決以后,然后開始寫程序,因?yàn)樵O(shè)計(jì)中要求,在音樂響起的同時(shí)還有LED燈伴隨閃爍,同時(shí)還要顯示歌曲序號(hào),在解決這個(gè)問題時(shí),我開始頭疼了,音樂響的同時(shí)可以顯示歌曲序號(hào),但是無(wú)法使LED伴隨閃爍,因?yàn)橐魳凡シ艜r(shí)用到了中斷,一旦加入了LED燈閃爍,音樂便無(wú)法正常播放,這讓我頭疼了一段時(shí)間,但是最后我在程序中又加入了另外一個(gè)中斷,才達(dá)到了題目的要求,程序?qū)懞靡院笸ㄟ^仿真圖仿真出來(lái)的效果還是不錯(cuò)的,但是把程序燒入芯片中,在板子上運(yùn)行的效果

20、卻沒有那么好,思來(lái)想去,問題應(yīng)該出在了喇叭上,因?yàn)榘遄由鲜褂玫氖欠澍Q器加三極管放大了,所以效果并沒有那么好,然后經(jīng)過調(diào)試以后,終于得到了改觀,最終有了成效。次做論文的經(jīng)歷也會(huì)使我終身受益,我感受到做論文是要真真正正用心去做的一件事情,是真正的自己學(xué)習(xí)的過程和研究的過程,沒有學(xué)習(xí)就不可能有研究的能力,沒有自己的研究,就不會(huì)有所突破,那也就不叫論文了。希望這次的經(jīng)歷能讓我在以后學(xué)習(xí)中激勵(lì)我繼續(xù)進(jìn)步。不積跬步何以至千里,本設(shè)計(jì)能夠順利的完成,也歸功于各位任課老師的認(rèn)真負(fù)責(zé),使我能夠很好的掌握和運(yùn)用專業(yè)知識(shí),并在設(shè)計(jì)中得以體現(xiàn)。正是有了他們的悉心幫助和支持,才使我的畢業(yè)論文工作順利完成,在此向天津冶金

21、職業(yè)技術(shù)學(xué)院,電信系的全體老師表示由衷的謝意。感謝他們?nèi)陙?lái)的辛勤栽培。參考文獻(xiàn)1 戴佳、戴衛(wèi)恒著 51單片機(jī)C語(yǔ)言應(yīng)用程序設(shè)計(jì)實(shí)例精講M.北京: 電子工業(yè)出版社出版, 2006.2 張洪潤(rùn)等著 單片機(jī)應(yīng)用設(shè)計(jì)200例M.北京: 北京航空航天大學(xué)出版社出版, 2006.3 陳正義著 單片機(jī)控制實(shí)習(xí)M.北京: 人民郵電出版社出版, 2006.4 張義和著等 例說51單片機(jī)(C語(yǔ)言版)M.北京: 人民郵電出版社出版, 2008.5 許珉著 單片機(jī)原理及應(yīng)用M.北京:中國(guó)電力出版社,2007.086 三恒星科技 MCS-51單片機(jī)原理與應(yīng)用實(shí)例M. 北京:電子工業(yè)出版社,2008.017 寧愛民,蘭

22、如波主編 單片機(jī)應(yīng)用技術(shù).北京:北京理工大學(xué)出版社。2009.8附錄附錄:音樂程序#include <reg51.h>#include<intrins.h>unsigned char Count;unsigned char keys;sbit _Speak =P14 ; /訊響器控制腳 #define led P3unsigned char pattern_P3=0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFC,0xF9,0xF3,0xE7,0xCF,0x9F,0x3F,0xFF,0xAA,0x55,0x18,0xFF,0xF0,

23、0x0F,0x00,0xFF,0xF8,0xF1,0xE3,0xC7,0x8F,0x1F,0x3F,0x7F,0x7F,0x3F,0x1F,0x8F,0xC7,0xE3,0xF1,0xF8,0xFF,0x00,0x00,0xFF,0xFF,0x0F,0xF0,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80,0x00,0x00,

24、0x80,0xC0,0xE0,0xF0,0xF8,0xFC,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF;unsigned char code SONG1 = /祝你平安0x26,0x20,0x20,0x20,0x20,0x20,0x26,0x10,0x20,0x10,0x20,0x80,0x26,0x20,0x30,0x20,0x30,0x20,0x39,0x10,0x30,0x10,0x30,0x80,0x26,0x20,0x20,0x20,0x20,0x20,0x1

25、c,0x20,0x20,0x80,0x2b,0x20,0x26,0x20,0x20,0x20,0x2b,0x10,0x26,0x10,0x2b,0x80,0x26,0x20,0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x60,0x40,0x10,0x39,0x10,0x26,0x20,0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x80,0x26,0x20,0x2b,0x10,0x2b,0x10,0x2b,0x20,0x30,0x10,0x39,0x10,0x26,0x10,0x2b,0x10,0x2

26、b,0x20,0x2b,0x40,0x40,0x20,0x20,0x10,0x20,0x10,0x2b,0x10,0x26,0x30,0x30,0x80,0x18,0x20,0x18,0x20,0x26,0x20,0x20,0x20,0x20,0x40,0x26,0x20,0x2b,0x20,0x30,0x20,0x30,0x20,0x1c,0x20,0x20,0x20,0x20,0x80,0x1c,0x20,0x1c,0x20,0x1c,0x20,0x30,0x20,0x30,0x60,0x39,0x10,0x30,0x10,0x20,0x20,0x2b,0x10,0x26,0x10,0x2

27、b,0x10,0x26,0x10,0x26,0x10,0x2b,0x10,0x2b,0x80,0x18,0x20,0x18,0x20,0x26,0x20,0x20,0x20,0x20,0x60,0x26,0x10,0x2b,0x20,0x30,0x20,0x30,0x20,0x1c,0x20,0x20,0x20,0x20,0x80,0x26,0x20,0x30,0x10,0x30,0x10,0x30,0x20,0x39,0x20,0x26,0x10,0x2b,0x10,0x2b,0x20,0x2b,0x40,0x40,0x10,0x40,0x10,0x20,0x10,0x20,0x10,0x2

28、b,0x10,0x26,0x30,0x30,0x80,0x00,; unsigned char code SONG2 = /路邊的野華不要采0x1C,0x10,0x18,0x10,0x20,0x10,0x1C,0x10,0x18,0x40,0x1C,0x20,0x20,0x20,0x1C,0x20,0x18,0x20,0x20,0x80,0xFF,0x20,0x30,0x1C,0x10,0x18,0x20,0x15,0x20,0x1C,0x20,0x20,0x20,0x26,0x40,0x20,0x20,0x2B,0x20,0x26,0x20,0x20,0x20,0x30,0x80,0xFF,

29、0x20,0x20,0x1C,0x10,0x18,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x20,0x1C,0x10,0x18,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x30,0x1C,0x10,0x18,0x20,0x15,0x20,0x1C,0x20,0x20,0x20,0x26,0x40,0x20,0x20,0x2B,0x20,0x26,0x20,0x20,0x20,0x30,0x80,0x20,0x30,0x1C,0x10,

30、0x20,0x10,0x1C,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x15,0x1F,0x05,0x20,0x10,0x1C,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x30,0x1C,0x10,0x18,0x20,0x15,0x20,0x1C,0x20,0x20,0x20,0x26,0x40,0x20,0x20,0x2B,0x20,0x26,0x20,0x20,0x20,0x30,0x30,0x20,0x30,0x1C,0x10,

31、0x18,0x40,0x1C,0x20,0x20,0x20,0x26,0x40,0x13,0x60,0x18,0x20,0x15,0x40,0x13,0x40,0x18,0x80,0x00,;void Time_Init() TMOD = 0x11; IE = 0x8a; IP = 0x02; TH0 = 0xD8; TL0 = 0xEF; /12MZ晶振,10ms TH1 = (65536 - 50000)/256; TL1 = (65536 - 50000)%256; TR1 = 1;void Time0_Int() interrupt 1 TH0 = 0xD8; TL0 = 0xEF; Count+; /長(zhǎng)度加1void Time0_LED() interrupt 3static unsigned char L_Count = 0,n=0;TH1 = (65536 - 50000)/256; TL1 = (65536 - 50000)%256;if(+L_Count = 5)L_Count = 0;led=pattern_P3n+;n%=104;/*-功能:1MS延時(shí)子程序-*/void Delay_xMs(unsigned int x)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論