版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 畢業(yè)設(shè)計(jì)報(bào)告(論文)</p><p> 報(bào)告(論文)題目:基于單片機(jī)的音樂播放器 </p><p> 作者所在系部: 電子工程系 </p><p> 作者所在專業(yè): 電氣自動(dòng)化技術(shù) </p><p> 畢業(yè)設(shè)計(jì)(論文)任務(wù)書</p><p&g
2、t; 指導(dǎo)教師: 教研室主任: 系主任:</p><p><b> 摘 要</b></p><p> 近年來隨著科技的飛速發(fā)展,單片機(jī)的應(yīng)用正在不斷地走向深入,同時(shí)帶動(dòng)傳統(tǒng)控制檢測日新月異更新。在實(shí)時(shí)檢測和自動(dòng)控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往是作為一個(gè)核心部件來使用,僅單片機(jī)方面知識是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu),以
3、及針對具體應(yīng)用對象特點(diǎn)的軟件結(jié)合,加以完善。</p><p> 當(dāng)今,利用單片機(jī)控制音樂播放多不勝舉,音樂芯片也相當(dāng)之多,而利用單片機(jī)存儲音樂,控制播放最為廣泛。它有功能多﹑價(jià)格優(yōu)﹑外圍電路簡單的特點(diǎn),很受音樂愛好者及音樂芯片制造商的青昧。本文中,用單片機(jī)芯片及少數(shù)外圍電路控制音樂播放。</p><p> 本設(shè)計(jì)是以單片機(jī)AT89C51為核心數(shù)據(jù)處理器件,由LCD液晶顯示屏LM016L
4、顯示歌曲的曲號、播放時(shí)間、開機(jī)畫面以及鍵號,開機(jī)畫面為交替顯示W(wǎng)ELCOM HERE和作者姓名,采用4*4行列式鍵盤實(shí)現(xiàn)曲號的選擇,其中1~A號按鍵用來選擇曲號,C鍵控制下一曲,D鍵控制上一曲,E鍵控制播放/暫停,F(xiàn)鍵為開機(jī)畫面顯示,元件以低耗、高能、耐用、精確、易于操作等為優(yōu)先考慮因素。采當(dāng)鍵盤有鍵按下時(shí),判斷鍵值,啟動(dòng)計(jì)數(shù)器T0,產(chǎn)生一定頻率的脈沖,驅(qū)動(dòng)蜂鳴器,放出樂曲。同時(shí)啟動(dòng)定時(shí)器T1,顯示樂曲播放的時(shí)間,并驅(qū)動(dòng)LCD,顯示歌曲
5、號及播放時(shí)間。AT89C51單片機(jī)的內(nèi)存較小,就用了一個(gè)74LS373鎖存器和27512外部擴(kuò)展芯片對該單片機(jī)進(jìn)行了內(nèi)存的擴(kuò)充,增大了它的存儲空間,讓他可以存儲足夠多的歌曲。</p><p> 該音樂發(fā)生器的論文詳細(xì)介紹了其硬件結(jié)構(gòu)和設(shè)計(jì)方法,整個(gè)設(shè)計(jì)簡單實(shí)用,功能完整。</p><p> 關(guān)鍵詞:音樂;AT89C51;單片機(jī);LCD LM016L;</p><p&
6、gt;<b> 目 錄</b></p><p><b> 第1章 緒 論1</b></p><p> 1.1電子音樂概述1</p><p> 1.2國內(nèi)外電子音樂的發(fā)展1</p><p> 1.3音樂發(fā)生器的擴(kuò)展2</p><p> 第2章 設(shè)計(jì)方案
7、3</p><p> 2.1 設(shè)計(jì)方案論證3</p><p> 2.1.1方案一3</p><p> 2.1.2 方案二4</p><p> 2.1.2 方案三5</p><p> 2.1.3 方案比較6</p><p> 第3章 硬件設(shè)計(jì)7</p>&l
8、t;p> 3.1 電路組成及工作原理7</p><p> 3.1.1 電路組成7</p><p> 3.1.2 電路工作原理7</p><p> 3.2 AT89C51的簡介8</p><p> 3.2.1 AT89C51功能概述8</p><p> 3.2.2 AT89C51的管腳圖8&
9、lt;/p><p> 3.2.3 AT89C51 單片機(jī)的引腳介紹9</p><p> 3.3 晶振電路9</p><p> 3.4 揚(yáng)聲器電路10</p><p> 3.5 顯示電路10</p><p> 3.6 更換歌曲電路11</p><p> 3.7 復(fù)位電路12&l
10、t;/p><p> 3.8 程序存儲器外部擴(kuò)展電路13</p><p> 第4章 液晶顯示原理及LM016L簡介14</p><p> 4.1 液晶顯示原理及分類14</p><p> 4.1.1液晶顯示原理14</p><p> 4.1.2液晶顯示器的分類14</p><p&g
11、t; 4.1.3液晶顯示器各種圖形的顯示原理:14</p><p> 4.2 LCD1602簡介15</p><p> 第5章 穩(wěn)壓電源17</p><p> 5.1 穩(wěn)壓電源的功能17</p><p> 5.2直流穩(wěn)壓電源17</p><p> 5.3 220v交流電轉(zhuǎn)5v直流電的電源設(shè)計(jì)1
12、8</p><p> 5.3.1電路工作原理18</p><p> 5.3.2電路原理圖19</p><p> 第6章 軟件系統(tǒng)設(shè)計(jì)20</p><p> 6.1 軟件流程設(shè)計(jì)20</p><p> 6.2性能分析22</p><p><b> 結(jié)論23<
13、/b></p><p><b> 致 謝24</b></p><p><b> 參考文獻(xiàn)25</b></p><p><b> 附 錄26</b></p><p> 基于單片機(jī)的音樂播放器</p><p><b>
14、第1章 緒 論</b></p><p><b> 1.1電子音樂概述</b></p><p> 電子音樂是現(xiàn)代音樂的一種形式,是一種與古典截然不同的音樂形式。而今,越來越多鐘情于電子音樂的音樂家們相信,通過電流產(chǎn)生的聲音打破音樂的結(jié)構(gòu)及人們習(xí)慣的聽覺經(jīng)驗(yàn),人與人之間的情感是可以溝通的。電子音樂是一種科技的見證。也就是說,借助電子音樂,技術(shù)可以見證音樂,
15、音樂可以見證技術(shù)。電子音樂是對傳統(tǒng)音樂的延承和背叛,它緊密地依偎著這個(gè)“科技與信息”的時(shí)代。</p><p> 音樂電聲的一個(gè)重要內(nèi)容就是電子音樂。電子琴的出現(xiàn),開辟了音樂的一個(gè)新天地。但是自從電子合成器問世以來,電子音樂就又進(jìn)入了一個(gè)更高的階段。 目前,由于電子音樂的普及,電子合成器(合成器實(shí)際上是一臺聲音的頻率合成儀,可以制作各種聲音,改變各種音色)可以解決相當(dāng)一部分的歌唱及舞廳的伴奏問題。可以事先制作伴奏
16、音樂或背景音樂,而不需要樂隊(duì),或者部分代替樂隊(duì)。由于音樂合成器制作和修改方便,成本低,音樂豐滿,所以市場需求量很大,因此,世界許多國家的廠商都不斷地在發(fā)展并推出新的型號,每年都要更新?lián)Q代。當(dāng)前的發(fā)展趨勢是不斷的采用先進(jìn)技術(shù),例如有的合成器有“跟隨”功能,即經(jīng)預(yù)置,每一個(gè)音后可以跟隨一個(gè)二度或三度音,“重疊”功能,輕奏或重奏時(shí)可以發(fā)不同音調(diào)或音色;另外,合成器還向輕便、使用操作方便等方向發(fā)展。</p><p>
17、1.2國內(nèi)外電子音樂的發(fā)展 </p><p> 早期“電子音樂”靠模擬電路產(chǎn)生聲音的,它的主要功能是產(chǎn)生電子音頻和對人耳所能聽到的所有泛音列進(jìn)行編輯?!半娮右魳贰毕蛉藗冋宫F(xiàn)出了混合新音色、非常規(guī)音色制作方式的優(yōu)勢,大大提高了制作和創(chuàng)作音樂的效率,帶動(dòng)了新的音樂風(fēng)格的發(fā)展。60多年來,“電子音樂”主要經(jīng)歷了從“錄音機(jī)音樂”到“合成器音樂”再到“電腦音樂”這三個(gè)階段的演變。電子樂器的發(fā)展在“電子音樂”的誕生后,使人
18、們充分認(rèn)識到了“電子樂器”運(yùn)用到“電子音樂”中的可行性。這必將為“電子音樂”渲染上一片神話色彩,映照著人類生生不息的智慧。沒有這個(gè)發(fā)展就不可能有當(dāng)代電腦音樂的出現(xiàn)。電子音樂在我國的發(fā)展</p><p> “電子音樂”最初是70年代末到80年代初的“改革開放”以來,西方現(xiàn)代音樂思潮與實(shí)踐在中國的傳播。90年代以來,“電子音樂”創(chuàng)作與教育已經(jīng)開始逐步廣泛開展。1993年,中央音樂學(xué)院作曲家張小夫教授創(chuàng)建了中國現(xiàn)代電
19、子音樂中心,有力的推動(dòng)了中國電子音樂的發(fā)展。并于此開始開設(shè)關(guān)于此項(xiàng)技術(shù)一些相關(guān)領(lǐng)域的研究生、本科生。</p><p> 以MIDI為代表的音樂數(shù)碼技術(shù)從20世紀(jì)80年代中期開始逐步進(jìn)入我國的音樂生活,并以驚人的速度從多方面影響著專業(yè)音樂。尤其是作曲與作曲技術(shù)理論專業(yè)的思想觀念、表現(xiàn)手法與工作程序,社會生產(chǎn)和消費(fèi)也因此引發(fā)了急切的用人需求。</p><p> 現(xiàn)在隨著計(jì)算機(jī)的兼容性越來越
20、好,多媒體計(jì)算機(jī)進(jìn)入千家萬戶,計(jì)算機(jī)進(jìn)行綜合音樂制作能力更強(qiáng),音樂作品可以把它儲存成一定的格式,通過軟盤或網(wǎng)絡(luò)進(jìn)行傳播,聽眾直接在計(jì)算機(jī)上聽音樂。它容聲音、圖形、文字于一體,極富有刺激性,比現(xiàn)場演出還精彩,更明白。除了網(wǎng)絡(luò)中的應(yīng)接不暇的應(yīng)用,技術(shù)也逐步普及到了大眾手機(jī)鈴音領(lǐng)域。可以自行剪切編輯、錄制喜歡的音樂或聲音作為個(gè)性手機(jī)鈴音。</p><p> 綜合上述,從“電子音樂”的過去、現(xiàn)在、未來發(fā)展的進(jìn)程中可以看
21、出,它給音樂制作能普及至社會個(gè)人便攜操作的影響,是不可磨滅的功績。它的統(tǒng)治地位趨勢已成不可逆轉(zhuǎn)的狀態(tài)。電子音樂已經(jīng)深入地影響到了現(xiàn)代人的音樂審美觀念,并有繼續(xù)發(fā)展的強(qiáng)烈趨勢。在這個(gè)趨勢中,電腦音樂也許不會成為今后音樂的主流,但它在整個(gè)人類音樂史上的地位已經(jīng)不容置疑地確立了,相信它會越來越深入地浸透到音樂創(chuàng)作和欣賞的領(lǐng)域中,并且將在一定程度上影響人們對音樂的理解和詮釋。用單片機(jī)制作的音樂發(fā)生器也會越來越多,這將必然成為一種趨勢。</
22、p><p> 1.3音樂發(fā)生器的擴(kuò)展</p><p> 熟練的運(yùn)用89C51單片機(jī)定時(shí)器產(chǎn)生固定頻率的方波信號,推動(dòng)喇叭發(fā)出旋律,按下單鍵可以演奏預(yù)先設(shè)置的歌曲旋律,最重要的是自己還可以通過程序設(shè)計(jì)輸入自己喜歡的歌曲來演奏中,本設(shè)計(jì)采用簡易音階編碼直覺式輸入法方便設(shè)計(jì)音樂旋律,可以擴(kuò)充其功能如下:</p><p> (1)可以顯示歌曲的名稱</p>
23、<p> (2)可以設(shè)置睡眠關(guān)機(jī)時(shí)間</p><p> ?。?)可以設(shè)置歌曲的播放模式,單曲循環(huán)還是順序播放</p><p> (4)可以存儲多首歌曲</p><p><b> 第2章 設(shè)計(jì)方案</b></p><p> 2.1 設(shè)計(jì)方案論證</p><p><b>
24、 2.1.1方案一</b></p><p> 利用AT89C51、74LS373鎖存器和27512外部擴(kuò)展組成的音樂播放器</p><p><b> (1)硬件設(shè)計(jì)</b></p><p> 電路以AT89C51為主控制器,74LS373和27512進(jìn)行外部程序存儲器的擴(kuò)展,播放/暫停鍵為播放/暫停歌曲,下一曲鍵和上一曲鍵分別
25、為調(diào)整歌曲的下一曲和上一曲選擇鍵的按鈕。晶振采用12MHz,音樂信號由P3.0口輸出,經(jīng)喇叭發(fā)聲而播放歌曲如圖2-1所示框架圖。</p><p><b> ?。?)軟件設(shè)計(jì)</b></p><p> 程序中根據(jù)音選取的是C調(diào)三個(gè)8度內(nèi)的音符,共24個(gè)音階。每個(gè)音符對應(yīng)頻率由定時(shí)器T0產(chǎn)生。為了程序調(diào)用方便,每個(gè)音符都對應(yīng)一個(gè)編碼,占用一個(gè)字節(jié)。在程序中以查表的方式加
26、載計(jì)數(shù)初值。當(dāng)值為00H時(shí)表示空拍,與節(jié)拍碼配合完成節(jié)拍發(fā)音。節(jié)拍碼也占一個(gè)字節(jié),每個(gè)音符的時(shí)間長度等于基本時(shí)間乘以節(jié)拍碼的值,由定時(shí)器產(chǎn)生。當(dāng)節(jié)拍碼值為01H時(shí),表示當(dāng)前樂曲結(jié)束,為00H時(shí),表示全部樂曲結(jié)束。為了編碼簡單,一般節(jié)拍碼高半字節(jié)表示整拍,低半字節(jié)表示分?jǐn)?shù),只要基本延時(shí)設(shè)定恰當(dāng)即可并且在按開始按鈕后,可以播放歌曲。在播放程序中設(shè)置三個(gè)變量,分別用于用于存放時(shí)、分、秒,每次定時(shí)中斷發(fā)生時(shí),對基準(zhǔn)時(shí)間計(jì)數(shù),當(dāng)達(dá)到一秒時(shí),把秒加
27、一,達(dá)到一分時(shí),將分加一……同時(shí)調(diào)用數(shù)碼管顯示子程序,將時(shí)分秒分別拆分為個(gè)位、十位進(jìn)行顯示。利用外部中斷1、2實(shí)現(xiàn)上一曲、下一曲以及暫停功能,設(shè)置一個(gè)計(jì)數(shù)變量,檢測到上一曲或下一曲按下時(shí),分別對計(jì)數(shù)變量加一或減一,檢測到暫停被按下時(shí),等待按鍵再一次按下后,繼續(xù)播放,方案中歌曲的循環(huán)模式為列表循環(huán)</p><p><b> 2.1.2 方案二</b></p><p>
28、<b> (1)硬件設(shè)計(jì)</b></p><p> 電路以AT89C51為主控制器,74LS373和27512進(jìn)行外部程序存儲器的擴(kuò)展,采用利用4X4組成的16個(gè)按鈕矩陣鍵盤來實(shí)現(xiàn)對播放的控制,其中包括下一曲、上一曲、暫停按鈕(分別為C、D、E鍵),當(dāng)按下1~A其中的一個(gè)時(shí),跳到相應(yīng)的曲譜進(jìn)行演奏,顯示電路采用六個(gè)共陰極數(shù)碼管進(jìn)行顯示,晶振采用12MHz,音樂信號由P3.0口輸出,經(jīng)喇叭
29、發(fā)聲而播放歌曲,如圖2-2所示。</p><p><b> (2)軟件設(shè)計(jì)</b></p><p> 程序中音選取的是C調(diào)三個(gè)8度內(nèi)的音符,共24個(gè)音階。每個(gè)音符對應(yīng)頻率由定時(shí)器T0產(chǎn)生。為了程序調(diào)用方便,演奏時(shí)時(shí)每個(gè)音符都對應(yīng)一個(gè)編碼,占用一個(gè)字節(jié)。在程序中以查表的方式加載計(jì)數(shù)初值,為了編碼簡單,一般節(jié)拍高半字節(jié)表示整拍,低半字節(jié)表示分?jǐn)?shù),只要基本延時(shí)設(shè)定恰當(dāng)即
30、可,為了及時(shí)響應(yīng)鍵盤操作,程序的編寫以鍵盤掃描為主線編寫(即主程序循環(huán)掃描按鍵,在按鍵模塊中調(diào)用其他功能模塊),按鍵每按下一次,按鍵掃描模塊計(jì)算出鍵值,并儲存鍵值,根據(jù)鍵值跳轉(zhuǎn)至響應(yīng)的標(biāo)號執(zhí)行程序,播放相應(yīng)的歌曲,歌曲循環(huán)模式為單曲循環(huán),其他功能的實(shí)現(xiàn)與方案一類同</p><p><b> 2.1.2 方案三</b></p><p><b> (1)硬件
31、設(shè)計(jì)</b></p><p> 電路以AT89C51為主控制器,采用利用4X4組成的16個(gè)按鈕矩陣鍵盤來上實(shí)現(xiàn)對播放的控制,其中C、D、E分別為功能鍵上一曲、下一曲以及暫停。F鍵為開機(jī)畫面顯示,1~A號按鍵中每按一個(gè)鍵,跳到相應(yīng)的曲譜進(jìn)行演奏,顯示電路采用液晶顯示器LM016L進(jìn)行顯示,晶振采用12MHz,音樂信號由P3.0口輸出,經(jīng)喇叭發(fā)聲而播放歌曲,如圖2-3所示。</p><
32、;p><b> (2)軟件設(shè)計(jì)</b></p><p> 程序中音選取的是C調(diào)一個(gè)8度內(nèi)的音符,共7個(gè)音階。根據(jù)十二平均律,(即將八度定義為1200音分,其中全因音符占200音分,半音占100音分,共十二個(gè)半音)每個(gè)音符對應(yīng)頻率由定時(shí)器T0產(chǎn)生。為了程序調(diào)用方便,將十二個(gè)半音的定時(shí)器初值放于表中,演奏時(shí)無需計(jì)算定時(shí)器初值,在程序中以查表的方式加載計(jì)數(shù)初值,每個(gè)音符都對應(yīng)一個(gè)編碼,占
33、用一個(gè)字節(jié)。由于人耳的分辨力有限,為了編程簡單,曲譜中的節(jié)拍碼用延時(shí)來代替,每個(gè)音符發(fā)音30MS。由于采用的是矩陣式鍵盤,為了及時(shí)響應(yīng)按鍵,程序的編寫以鍵盤掃描為主線編寫(即主程序循環(huán)掃描按鍵,在按鍵模塊中調(diào)用其他功能模塊)。按鍵每按下一次,按鍵掃描模塊計(jì)算出鍵值,并儲存鍵值,跳轉(zhuǎn)至響應(yīng)的標(biāo)號執(zhí)行程序,并調(diào)用液晶顯示子程序,將鍵值在液晶顯示器制定位置顯示,如果檢測到F鍵被按下,調(diào)用液晶顯示模塊,顯英文字符歡迎,以及作者信息,本程序中,由
34、于音符的長度是固定的30MS,T1用于更新剩余時(shí)間。剩余時(shí)間的顯示同上。</p><p> 2.1.3 方案比較</p><p> 從以上三種方案,方案一采用的是獨(dú)立式按鍵,按鍵太少,不能實(shí)現(xiàn)歌曲的快速選擇,幾乎沒有拓展功能的可能,而方案二雖然采用的是矩陣式鍵盤,無論從擴(kuò)展功能上將還是快速選擇都優(yōu)于方案一,但數(shù)碼管顯示不穩(wěn)定,編程以及困難,占用CPU時(shí)序太多,方案三顯然不存在方案一、方
35、案二的缺點(diǎn),使用了液晶顯示屏,編程簡單,顯示穩(wěn)定,占用CPU時(shí)序少,并且可以實(shí)現(xiàn)許多方案一、方案二無法實(shí)現(xiàn)的功能,無論是矩陣式鍵盤,還是液晶顯示器,都有許多可擴(kuò)展的功能,并且在播放音樂時(shí)簡單實(shí)用,在使用上及其功能的實(shí)現(xiàn)上都優(yōu)于前兩種方案。更重要的是液晶顯示器是當(dāng)今電子設(shè)計(jì)的主流,通過這次設(shè)計(jì),我能夠?qū)W習(xí)到許多東西。通過方案對比,最終選擇方案三,音樂發(fā)生器電路原理圖見附錄所示。</p><p><b>
36、 第3章 硬件設(shè)計(jì)</b></p><p> 3.1 電路組成及工作原理</p><p> 3.1.1 電路組成</p><p> 音樂發(fā)生器的電路設(shè)計(jì)方框圖如上圖方案三所示,電路原理圖見附錄1所示,主要由單片機(jī)控制系統(tǒng)、行列式鍵盤、液晶顯示屏、內(nèi)存外部擴(kuò)充電路、復(fù)位電路等組成。</p><p> 單片機(jī)AT89C51是本
37、系統(tǒng)的核心,它主要負(fù)責(zé)控制各個(gè)部分協(xié)調(diào)工作。在其外圍接上:復(fù)位電路、數(shù)碼管、按鈕及揚(yáng)聲器。元件為:晶振X1、電容、電阻、揚(yáng)聲器、4*4行列式鍵盤、74LS373鎖存器、27512外部程序存儲器擴(kuò)展、LM016L液晶顯示屏。硬件電路中用P1.0~P1.7控制按鍵,其中P1.0~P1.3掃描行,P1.4~P1.7掃描列,用,P2.0~P2.2作為LCD的RS,R/W,E的控制信號。用P0.0~P0.7作為LCD的D0~D7的控制信號。用P3
38、.7口控制蜂鳴器,電路為12MHZ晶振頻率工作,起振電路中C1,C2均為30pf。將P0口作為74LS373鎖存器的輸入以及27C512的數(shù)據(jù)輸入口,鎖存器輸出至27C512的低八位地址口,將P2口作為27C512高八位地址口,27C512的控制信號OE/VPP接至單片機(jī)的PSEN,實(shí)現(xiàn)片外ROM的讀寫控制。</p><p> 3.1.2 電路工作原理 </p><p> 本音樂發(fā)生器
39、是用單片機(jī)來設(shè)計(jì)制作完成,其功能的實(shí)現(xiàn)主要通過軟件編程來完成, AT89C51單片機(jī)片內(nèi)帶有4KB和外部程序存儲器擴(kuò)展的256K的內(nèi)存,并且允許在系統(tǒng)內(nèi)改寫或用編程器編程。該音樂發(fā)生器的效率較高,其誤差主要由晶振自身的誤差所造成。存儲歌曲是采用的外部擴(kuò)展,4*4行列式鍵盤來實(shí)現(xiàn)的,按鍵將單片機(jī)I/0 口的電平拉低,單片機(jī)檢測到I/O口電平為0時(shí),判斷并存儲鍵值。并自動(dòng)跳轉(zhuǎn)至相應(yīng)曲號的標(biāo)號處執(zhí)行代碼。顯示采用的是液晶顯示屏LM016L,顯
40、示穩(wěn)定清晰,并且能顯示多個(gè)信息,當(dāng)片內(nèi)4K的程序存儲器存滿后,自動(dòng)跳轉(zhuǎn)到片外256K程序存儲器繼續(xù)存儲</p><p> 3.2 AT89C51的簡介</p><p> 3.2.1 AT89C51功能概述</p><p> 自從1971年微型計(jì)算機(jī)問世以來,隨著大規(guī)模集成電路技術(shù)的進(jìn)一步發(fā)展,導(dǎo)致微型計(jì)算機(jī)正向兩個(gè)主要方向發(fā)展:一是高速度、高性能、大容量的高檔
41、微型機(jī)及其系列化向大、中型計(jì)算機(jī)的挑戰(zhàn);另一個(gè)是穩(wěn)定可靠、小而廉、能適應(yīng)各種控制領(lǐng)域需要的單片機(jī)。</p><p> MCS—51系列是Intel公司在1980年推出的高檔8位單片機(jī),具有性能價(jià)格比高、品種多、兼容性強(qiáng)、開發(fā)用的仿真機(jī)較完善等優(yōu)點(diǎn),所以在國際上和國內(nèi)的占有率相當(dāng)高。它擁有8位微處理器和控制器,內(nèi)含一個(gè)一位布爾運(yùn)算處理器,可直接對數(shù)據(jù)的位進(jìn)行操作和運(yùn)算,特別適用于邏輯控制。內(nèi)部含有4KB的程序RO
42、M并且在外部擴(kuò)展了256K的存儲空間,2個(gè)16位的計(jì)數(shù)/定時(shí)器。本次采用的是AT89C51單片機(jī),其電路如3-1所示,它的中斷功能比較強(qiáng),有5個(gè)中斷源,即外部中斷2個(gè),定時(shí)器中斷2個(gè),串行中斷1個(gè),有2個(gè)中斷優(yōu)先級。中斷控制電路主要包括用于中斷控制的四個(gè)寄存器:定時(shí)器控制寄存器TCON,串行口控制寄存器SCON,中斷允許控制寄存器IE,中斷優(yōu)先級控制寄存器IP等。內(nèi)部時(shí)鐘振蕩器,全雙工方式的串行接口(UART),兩極中斷優(yōu)先權(quán)的6個(gè)中斷
43、源/5個(gè)中斷矢量的中斷邏輯。哈佛結(jié)構(gòu)的存儲器組織,支持高達(dá)64K為單周期指令,支持六種尋址方式。最高時(shí)鐘振蕩頻率可達(dá)12MHZ,大部分指令執(zhí)行時(shí)間為1µs,乘、除指令為4µs。</p><p> 3.2.2 AT89C51的管腳圖</p><p> MCS-51系列單片機(jī)采用40引腳雙列直插式封裝(DIP),其引腳排列和邏輯符號如圖2-3所示,4個(gè)并行口共有32根引
44、腳,可分別作地址線、數(shù)據(jù)線和I/O線;2根電源線;2根時(shí)鐘振蕩電路引腳和4根控制線。</p><p> 3.2.3 AT89C51 單片機(jī)的引腳介紹</p><p> AT89C51單片機(jī)是高性能單片機(jī),因?yàn)槭芤_數(shù)目的限制,所以有許多引腳具有第二功能,各引腳功能說明如下:</p><p> (1)輸入/輸出口線</p><p> A
45、. 口8位雙向口線</p><p> B. 口8位雙向口線</p><p> C. 口8位雙向口線</p><p> D. 口8位雙向口線</p><p> (2)ALE地址鎖存控制信號</p><p> 在系統(tǒng)擴(kuò)展時(shí),ALE用于控制把口輸出的底8位地址送入鎖存器鎖存起來,以實(shí)現(xiàn)低位地址和數(shù)據(jù)
46、的分時(shí)傳送。此外由于ALE是以六分之一晶振頻率的固定頻率輸出的正脈沖,因此可作為外部時(shí)鐘或外部定時(shí)脈沖使用。</p><p> ?。?)外部程序存儲器讀選通信號</p><p> 在讀外部ROM時(shí)有效(低電平),以實(shí)現(xiàn)外部ROM單元的讀操作。</p><p> ?。?)訪問程序存儲器控制信號</p><p> 當(dāng)信號為低電平時(shí),對ROM的
47、讀操作限定在外部程序存儲器;而當(dāng)信號為高電平時(shí),對ROM的讀操作是從內(nèi)部程序存儲器開始,并可延續(xù)至外部程序存儲器。</p><p> ?。?)RST 復(fù)位信號</p><p> 當(dāng)輸入的復(fù)位信號延續(xù)2個(gè)機(jī)器周期以上高電平時(shí)即為有效,用以完成單片機(jī)的復(fù)位操作。</p><p> (6)XTAL1和XTAL2外接晶體引線端</p><p>
48、 當(dāng)使用芯片內(nèi)部時(shí)鐘時(shí),這兩個(gè)引線端用于外接石英晶體和微調(diào)電容;當(dāng)使用外部時(shí)鐘時(shí),用于接外部時(shí)鐘脈沖信號。</p><p> ?。?)電源、地線GND</p><p> VCC、GND。VCC一般接+5V電源,GND接地。</p><p><b> 3.3 晶振電路</b></p><p> MCS-51片內(nèi)有一個(gè)
49、高增益的反相放大器,其輸入端為引腳XTAL1和輸出端為引腳為XTAL2,用于外接石英晶體振蕩器和微調(diào)電容,構(gòu)成穩(wěn)定的的自激振蕩器,其發(fā)出的脈沖直接送入內(nèi)部的時(shí)鐘電路,如圖3-2所示。電容C1和C2對頻率有微調(diào)作用,電容一般取20pF左右。晶體振蕩頻率范圍是1.2MHz~12MHz,一般情況下,選用振蕩頻率為12MHz的石英晶體。振蕩脈沖信號經(jīng)過內(nèi)部時(shí)鐘發(fā)生器進(jìn)行二分頻之后,才成為單片機(jī)的時(shí)鐘信號。</p><p>
50、;<b> 圖3-2 晶振電路</b></p><p><b> 3.4 揚(yáng)聲器電路</b></p><p> 本設(shè)計(jì)是采用蜂鳴器用來發(fā)出聲音,由于在實(shí)際應(yīng)用中,單片機(jī)輸出的標(biāo)準(zhǔn)高電平為5伏,輸出功率很有限,所以本設(shè)計(jì)中,理論聯(lián)系實(shí)際,用一個(gè)PNP型三極管驅(qū)動(dòng)蜂鳴器,由于三極管具有放大作用,在實(shí)際應(yīng)用中,輸出功率將會提高很多。 <
51、/p><p><b> 3.5 顯示電路</b></p><p> 本設(shè)計(jì)顯示是采用液晶顯示器LM016L進(jìn)行顯示, LM016L的功能、顯示原理以及使用方法將會在后文中介紹,P0口是一個(gè)地址/數(shù)據(jù)復(fù)用的雙向I/O口,當(dāng)使用P0口訪問外部存儲器和數(shù)據(jù)存儲器時(shí),P0口內(nèi)部已有上拉電阻,當(dāng)P0口作程序檢驗(yàn),輸出指令字節(jié)時(shí),必須外接上拉電阻。LM016L的控制信號RS、RW
52、、E分別接到單片機(jī)的P2.0、P2.1、P2.2。本設(shè)計(jì)中主要用LM016L顯示開機(jī)畫面、作者信息、播放剩余時(shí)間、歌曲號/鍵號。電路如圖3-4所示。</p><p> 3.6 更換歌曲電路</p><p> 采用4*4行列式鍵盤來實(shí)現(xiàn)選擇歌曲播放,以及對歌曲號做基本的操作,即上一曲、下一曲以及暫停/播放。在本設(shè)計(jì)中1-A號按鍵用于選擇歌曲的曲號播放,C、D、E分別為下一曲、上一曲、播放
53、/暫停按鈕,此外F鍵用于開機(jī)畫面顯示,0號按鍵在本設(shè)計(jì)中未使用,留作擴(kuò)展功能使用。用P1.0~P1.7控制按鍵,其中P1.0~P1.3掃描行,P1.4~P1.7掃描列。電路如圖3-5所示。</p><p><b> 3.7 復(fù)位電路</b></p><p> AT89C51的復(fù)位是由外部的復(fù)位電路來實(shí)現(xiàn)的。復(fù)位引腳RST通過一個(gè)施密特觸發(fā)器用來抑制噪聲,施密特觸發(fā)
54、器的輸出電平由復(fù)位電路采樣一次,然后才能得到內(nèi)部復(fù)位操作所需要的信號。</p><p> 本設(shè)計(jì)是采用上電自動(dòng)復(fù)位,上電自動(dòng)復(fù)位是通過外部復(fù)位電路的電容充電來實(shí)現(xiàn)的。只要Vcc的上升時(shí)間不超過1ms,就可以實(shí)現(xiàn)自動(dòng)上電復(fù)位。時(shí)鐘頻率用12MHZ時(shí)C取20PF。</p><p> 3.8 程序存儲器外部擴(kuò)展電路</p><p> 本設(shè)計(jì)是采用了一個(gè)74LS373
55、鎖存器和一個(gè)27512程序存儲器外部擴(kuò)展組成,其主要的功能就是為了在外部擴(kuò)展單片機(jī)內(nèi)存,使它有足夠的空間存放系統(tǒng)中的程序,而達(dá)到使它實(shí)現(xiàn)所要得到的功能和應(yīng)用的領(lǐng)域,其圖如圖3-7所示</p><p> 第4章 液晶顯示原理及LM016L簡介</p><p> 4.1 液晶顯示原理及分類</p><p> 4.1.1液晶顯示原理</p><
56、;p> 液晶顯示的原理是利用液晶的物理特性,通過電壓對其顯示區(qū)域進(jìn)行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅(qū)動(dòng)、易于實(shí)現(xiàn)全彩色顯示的特點(diǎn),目前已經(jīng)被廣泛應(yīng)用在便攜式電腦、數(shù)字?jǐn)z像機(jī)、PDA移動(dòng)通信工具等眾多領(lǐng)域。</p><p> 4.1.2液晶顯示器的分類</p><p> 液晶顯示的分類方法有很多種,通??砂雌滹@示方式分為段
57、式、字符式、點(diǎn)陣式等。除了黑白顯示外,液晶顯示器還有多灰度有彩色顯示等。如果根據(jù)驅(qū)動(dòng)方式來分,可以分為靜態(tài)驅(qū)動(dòng)(Static)、單純矩陣驅(qū)動(dòng)(Simple Matrix)和主動(dòng)矩陣驅(qū)動(dòng)(Active Matrix)三種。</p><p> 4.1.3液晶顯示器各種圖形的顯示原理:</p><p><b> (1) 線段的顯示</b></p><
58、p> 點(diǎn)陣圖形式液晶由M×N個(gè)顯示單元組成,假設(shè)LCD顯示屏有64行,每行有128列,每8列對應(yīng)1字節(jié)的8位,即每行由16字節(jié),共16×8=128個(gè)點(diǎn)組成,屏上64×16個(gè)顯示單元與顯示RAM區(qū)1024字節(jié)相對應(yīng),每一字節(jié)的內(nèi)容和顯示屏上相應(yīng)位置的亮暗對應(yīng)。例如屏的第一行的亮暗由RAM區(qū)的000H——00FH的16字節(jié)的內(nèi)容決定,當(dāng)(000H)=FFH時(shí),則屏幕的左上角顯示一條短亮線,長度為8個(gè)點(diǎn);
59、當(dāng)(3FFH)=FFH時(shí),則屏幕的右下角顯示一條短亮線;當(dāng)(000H)=FFH,(001H)=00H,(002H)=00H,……(00EH)=00H,(00FH)=00H時(shí),則在屏幕的頂部顯示一條由8段亮線和8條暗線組成的虛線。這就是LCD顯示的基本原理。</p><p><b> (2) 字符的顯示</b></p><p> 用LCD顯示一個(gè)字符時(shí)比較復(fù)雜,因?yàn)?/p>
60、一個(gè)字符由6×8或8×8點(diǎn)陣組成,既要找到和顯示屏幕上某幾個(gè)位置對應(yīng)的顯示RAM區(qū)的8字節(jié),還要使每字節(jié)的不同位為“1”,其它的為“0”,為“1”的點(diǎn)亮,為“0”的不亮。這樣一來就組成某個(gè)字符。但由于內(nèi)帶字符發(fā)生器的控制器來說,顯示字符就比較簡單了,可以讓控制器工作在文本方式,根據(jù)在LCD上開始顯示的行列號及每行的列數(shù)找出顯示RAM對應(yīng)的地址,設(shè)立光標(biāo),在此送上該字符對應(yīng)的代碼即可。</p><p
61、><b> (3) 漢字的顯示</b></p><p> 漢字的顯示一般采用圖形的方式,事先從微機(jī)中提取要顯示的漢字的點(diǎn)陣碼(一般用字模提取軟件),每個(gè)漢字占32B,分左右兩半,各占16B,左邊為1、3、5……右邊為2、4、6……根據(jù)在LCD上開始顯示的行列號及每行的列數(shù)可找出顯示RAM對應(yīng)的地址,設(shè)立光標(biāo),送上要顯示的漢字的第一字節(jié),光標(biāo)位置加1,送第二個(gè)字節(jié),換行按列對齊,送第
62、三個(gè)字節(jié)……直到32B顯示完就可以LCD上得到一個(gè)完整漢字。</p><p> 4.2 LCD1602簡介</p><p> LM016l 與LCD1602原理是一樣的,只不過PROTEUS中016沒顯示調(diào)</p><p> 1602LCD主要技術(shù)參數(shù):</p><p> 顯示容量:16×2個(gè)字符</p>&
63、lt;p> 芯片工作電壓:4.5—5.5V</p><p> 工作電流:2.0mA(5.0V)</p><p> 模塊最佳工作電壓:5.0V</p><p> 字符尺寸:2.95×4.35(W×H)mm</p><p> (1) 引腳功能說明:</p><p> 1602LCD采用
64、標(biāo)準(zhǔn)的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如表4-1所示:</p><p> 表4-1:引腳接口說明表</p><p> 第1腳:VSS為地電源。</p><p> 第2腳:VDD接5V正電源。</p><p> 第3腳:VL為液晶顯示器對比度調(diào)整端,接正電源時(shí)對比度最弱,接地時(shí)對比度最高,對比度過高時(shí)會產(chǎn)生“鬼影”
65、,使用時(shí)可以通過一個(gè)10K的電位器調(diào)整對比度。</p><p> 第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。</p><p> 第5腳:R/W為讀寫信號線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時(shí)可以讀忙信號,當(dāng)RS為高電平R/W為低電平時(shí)可以寫入數(shù)據(jù)。</p>
66、;<p> 第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。</p><p> 第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。</p><p> 第15腳:背光源正極。</p><p> 第16腳:背光源負(fù)極。</p><p> (2) 1602LCD的指令說明及時(shí)序</p><p
67、> 1602液晶模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實(shí)現(xiàn)的。(說明:1為高電平、0為低電平)</p><p> 指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。</p><p> 指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。</p><p> 指令3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動(dòng)方向,高電平右移,低電平左移 S:屏幕上所有文字
68、是否左移或者右移。高電平表示有效,低電平則無效。</p><p> 指令4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。</p><p> 指令5:光標(biāo)或顯示移位 S/C:高電平時(shí)移動(dòng)顯示的文字,低電平時(shí)移動(dòng)光標(biāo)。</p><p
69、> 指令6:功能設(shè)置命令 DL:高電平時(shí)為4位總線,低電平時(shí)為8位總線 N:低電平時(shí)為單行顯示,高電平時(shí)雙行顯示 F: 低電平時(shí)顯示5x7的點(diǎn)陣字符,高電平時(shí)顯示5x10的點(diǎn)陣字符。</p><p> 指令7:字符發(fā)生器RAM地址設(shè)置。</p><p> 指令8:DDRAM地址設(shè)置。</p><p> 指令9:讀忙信號和光標(biāo)地址 BF:為忙標(biāo)志位,高電
70、平表示忙,此時(shí)模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。</p><p><b> 指令10:寫數(shù)據(jù)。</b></p><p><b> 指令11:讀數(shù)據(jù)。</b></p><p><b> 第5章 穩(wěn)壓電源</b></p><p> 5.1 穩(wěn)壓電源的功能<
71、;/p><p> 1. 穩(wěn)定電壓:當(dāng)電網(wǎng)電壓出現(xiàn)瞬間波動(dòng)時(shí),穩(wěn)壓電源會以10-30ms的響應(yīng)速度對電壓幅值進(jìn)行補(bǔ)償,使其穩(wěn)定在±2%以內(nèi)。 </p><p> 2. 多功能綜合保護(hù):穩(wěn)壓器除了最基本的穩(wěn)定電壓功能以外,還應(yīng)具有過壓保護(hù)(超過輸出電壓的+10%)、欠壓保護(hù)(低于輸出電壓的-10%)、缺相保護(hù)、短路過載保護(hù)最基本的保護(hù)功能。 </p><p>
72、 3. 尖脈沖抑制(可選):電網(wǎng)有時(shí)會出現(xiàn)幅值很高,脈寬很窄的尖脈沖,它會擊穿耐壓較低的電子元件。穩(wěn)壓電源的抗浪涌組件能夠?qū)@樣的尖脈沖起到很好的抑制作用。 </p><p> 4. 隔離傳導(dǎo)性EMI電磁干擾(可選):數(shù)控設(shè)備多采用AC/DC整流+PFC高頻功率因數(shù)校正,自身有一定的干擾性同時(shí)對干擾源也有嚴(yán)格要求。穩(wěn)壓電源的濾波組件能夠有效隔離電網(wǎng)對設(shè)備的干擾同時(shí)也能有效隔離設(shè)備對電網(wǎng)的干擾。 </p&
73、gt;<p> 5. 防雷(可選):應(yīng)具有的防雷擊能力。</p><p><b> 5.2直流穩(wěn)壓電源</b></p><p> 又稱直流穩(wěn)壓器。它的供電電壓大都是交流電壓,當(dāng)交流供電電壓的電壓或輸出負(fù)載電阻變化時(shí),穩(wěn)壓器的直接輸出電壓都能保持穩(wěn)定。穩(wěn)壓器的參數(shù)有電壓穩(wěn)定度、紋波系數(shù)和響應(yīng)速度等。前者表示輸入電壓的變化對輸出電壓的影響。紋波系數(shù)表示
74、在額定工作情況下,輸出電壓中交流分量的大小;后者表示輸入電壓或負(fù)載急劇變化時(shí),電壓回到正常值所需時(shí)間。直流穩(wěn)壓電源分連續(xù)導(dǎo)電式與開關(guān)式兩類。前者由工頻變壓器把單相或三相交流電壓變到適當(dāng)值,然后經(jīng)整流、濾波,獲得不穩(wěn)定的直流電源,再經(jīng)穩(wěn)壓電路得到穩(wěn)定電壓(或電流)。這種電源線路簡單、紋波小、相互干擾小,但體積大、耗材多,效率低(常低于40%~60%)。后者以改變調(diào)整元件(或開關(guān))的通斷時(shí)間比來調(diào)節(jié)輸出電壓,從而達(dá)到穩(wěn)壓。這類電源功耗小,效
75、率可達(dá)85%左右,但缺點(diǎn)是紋波大、相互干擾大。所以,80年代以來發(fā)展迅速。從工作方式上可分為: </p><p> ?、倏煽卣餍?。用改變晶閘管的導(dǎo)通時(shí)間來調(diào)整輸出電壓。 </p><p> ?、跀夭ㄐ汀]斎胧遣环€(wěn)定的直流電壓,以改變開關(guān)電路的通斷比得到單向脈動(dòng)直流,再經(jīng)濾波后得到穩(wěn)定直流電壓。 </p><p> ?、圩儞Q器型。不穩(wěn)定直流電壓先經(jīng)逆變器變換成高頻交
76、流電,再經(jīng)變壓、整流、濾波后,從所得新的直流輸出電壓取樣,反饋控制逆變器工作頻率,達(dá)到穩(wěn)定輸出直流電壓的目的。</p><p> 5.3 220v交流電轉(zhuǎn)5v直流電的電源設(shè)計(jì)</p><p> 平時(shí)對于5v 的直流電源需求的情況比較多,在單片機(jī),以及一些電路中應(yīng)用的較多,因此,為了更方便快捷的由220v 的交流電得到這樣的電源,故設(shè)計(jì)了一個(gè)電路。</p><p>
77、; 5.3.1電路工作原理 </p><p> 從圖上看,變壓器輸入端經(jīng)過一個(gè)保險(xiǎn)連接電源插頭,如果變壓器或后面的電路發(fā)生短路,保險(xiǎn)內(nèi)的金屬細(xì)絲就會因大電流引發(fā)的高溫溶化后斷開。 </p><p> 變壓器后面由4個(gè)二極管組成一個(gè)橋式整流電路,整流后就得到一個(gè)電壓波動(dòng)很大的直流電源,所以在這里接一個(gè)330uF/25V的電解電容。 </p><p>
78、 變壓器輸出端的9V電壓經(jīng)橋式整流并電容濾波,在電容C1兩端大約會有11V多一點(diǎn)的電壓,假如從電容兩端直接接一個(gè)負(fù)載,當(dāng)負(fù)載變化或交流電源有少許波動(dòng)都會使C1兩端的電壓發(fā)生較大幅度的變化,因此要得到一個(gè)比較穩(wěn)定的電壓,在這里接一個(gè)三端穩(wěn)壓器的元件。 </p><p> 三端穩(wěn)壓器是一種集成電路元件,內(nèi)部由一些三極管和電阻等構(gòu)成,在分析電路時(shí)可簡單的認(rèn)為這是一個(gè)能自動(dòng)調(diào)節(jié)電阻的元件,當(dāng)負(fù)載電流大時(shí)三端穩(wěn)壓器內(nèi)的
79、電阻自動(dòng)變小,而當(dāng)負(fù)載電流變小時(shí)三端穩(wěn)壓器內(nèi)的電阻又會自動(dòng)變大,這樣就能保持穩(wěn)壓器的輸出電壓保持基本不變。 </p><p> 因?yàn)槲覀円敵?V的電壓,所以選用7805,7805前面的字母可能會因生產(chǎn)廠家不同而不同。LM7805最大可以輸出1A的電流,內(nèi)部有限流式短路保護(hù),短時(shí)間內(nèi),例如幾秒鐘的時(shí)間,輸出端對地(2腳)短路并不會使7805燒壞,當(dāng)然如果時(shí)間很長就不好說了,這跟散熱條件有很大的關(guān)系。 </
80、p><p> 三端穩(wěn)壓器后面接一個(gè)105的電容,這個(gè)電容有濾波和阻尼作用。 </p><p> 最后在C2兩端接一個(gè)輸出電源的插針,可用于與其它用電器連接,比如MP3等。 </p><p> 雖然7805最大電流是一安培,但實(shí)際使用一般不要超過500mA,否則會發(fā)熱很大,容易燒壞。一般負(fù)載電有200mA以上時(shí)需要散熱片。</p><p>
81、 5.3.2電路原理圖</p><p> 第6章 軟件系統(tǒng)設(shè)計(jì)</p><p> 6.1 軟件流程設(shè)計(jì)</p><p> 本設(shè)計(jì)采用了自定下下的設(shè)計(jì)流程,即在編制一個(gè)程序時(shí),先考慮程序的總體結(jié)構(gòu)而忽略一些細(xì)節(jié)問題,然后逐步的一步一步的細(xì)化,直至用程序語言完全描述每一個(gè)細(xì)節(jié)為止。主要程序流程有:主程序、判斷有無按鍵子程序、鍵盤掃描子程序、顯示鍵號/歌曲號子程序、
82、開機(jī)畫面子程序、按鍵值播放歌曲子程序、播放時(shí)間初始化子程序、液晶顯示屏寫指令子程序、液晶顯示屏寫數(shù)據(jù)、字符串顯示子程序播放時(shí)間顯示子程序、播放歌曲子程序、播放時(shí)間更新子程序。程序中使用了兩個(gè)定時(shí)中斷,定時(shí)中斷0用于產(chǎn)生整個(gè)音程的頻率,以便驅(qū)動(dòng)揚(yáng)聲器。定時(shí)器T1用于刷新播放時(shí)間,當(dāng)發(fā)生一秒定時(shí)中斷時(shí),將秒加一,達(dá)到60秒時(shí),將分加一,達(dá)到60分時(shí),將時(shí)加一。程序設(shè)置了溢出處理,即當(dāng)時(shí)間為23:59:59時(shí),自動(dòng)將時(shí)間更新為00:00:00
83、。程序的總體流程是當(dāng)P1由按鍵按下時(shí),讀鍵盤,并儲存鍵值,若為F鍵則通過查表的方式,調(diào)用字符串顯示子程序顯示開機(jī)畫面,同時(shí)用查表的方式求出鍵號的ASCII值,并調(diào)用顯示鍵號/曲號自稱序,將鍵號顯示出來。若為1-A,程序根據(jù)儲存的鍵號,將相應(yīng)歌曲的表頭地址賦給DPTR,取出曲譜,判斷是否為休止符,通過查表的方式將表中的定</p><p><b> 6.2性能分析</b></p>
84、<p> 在本設(shè)計(jì)中,一共設(shè)置了9首MID樂曲,分別是第一首《精忠報(bào)國》、第二首《月亮代表我的心》、第三首《看我七十二變》、第四首《同一首歌》、第五首《大海》、第六首《兩只蝴蝶》、第七首<<世上只有媽媽好>>、第八首歌《彩云追月》、第九首<<十年>>、第十首<<你的愛給了誰>>。在本設(shè)計(jì)中由于對音樂知識欠缺,曲譜為網(wǎng)絡(luò)下載。采用LCD顯示,穩(wěn)定清晰,可
85、靠性高,為了及時(shí)響應(yīng)按鍵,在每段子程序里面都調(diào)用了按鍵判斷子程序,并且主程序是以按鍵掃描為主線編寫的,系統(tǒng)的靈敏度高。除此之外,在按鍵掃描子程序中還帶有延時(shí)再判斷,軟件去抖動(dòng)功能,大大提高了系統(tǒng)的抗干擾性。采用定時(shí)中斷更新播放時(shí)間,增強(qiáng)了系統(tǒng)的準(zhǔn)確性,鑒于于作者水平有限,播放歌曲程序?yàn)榱撕唵螌?shí)用,節(jié)拍碼被設(shè)置為固定的30ms,演奏也只是在一個(gè)八度里面完成,系統(tǒng)適應(yīng)性有待提高。</p><p><b>
86、 結(jié)論</b></p><p> 本設(shè)計(jì)報(bào)告主要介紹了用單片機(jī)實(shí)現(xiàn)的音樂發(fā)生器的設(shè)計(jì)方法。系統(tǒng)介紹了該電路的硬件構(gòu)成和軟件工作過程,系統(tǒng)以AT89C51為核心,主要采用中斷控制系統(tǒng),結(jié)合所學(xué)的單片機(jī)的知識,實(shí)現(xiàn)系統(tǒng)的功能要求。設(shè)計(jì)中很好的使軟、硬件相結(jié)合,基本上達(dá)到了設(shè)計(jì)的要求。通過這次畢業(yè)設(shè)計(jì),使我對單片機(jī)及其附屬電路有了一定的了解,對課本上的知識有了近一步的掌握,也深刻明白了自己的不足。<
87、/p><p> 隨著畢業(yè)日子的到來,畢業(yè)設(shè)計(jì)也接近了尾聲。經(jīng)過幾個(gè)月的奮戰(zhàn)我的畢業(yè)設(shè)計(jì)終于完成了。在沒有做畢業(yè)設(shè)計(jì)以前覺得畢業(yè)設(shè)計(jì)只是對這幾年來所學(xué)知識的單純總結(jié),但是通過這次做畢業(yè)設(shè)計(jì)發(fā)現(xiàn)自己的看法有點(diǎn)太片面。畢業(yè)設(shè)計(jì)不僅是對前面所學(xué)知識的一種檢驗(yàn),而且也是對自己能力的一種提高。通過這短短幾個(gè)月的制作,我感覺到自己從課本上學(xué)到的理論知識和實(shí)踐仍有很大的差距。很多元器件根本不知道有什么功效,在仿真儀器中是什么代碼。
88、有的知識,自己感覺已經(jīng)掌握得差不多了,但是實(shí)際操作起來就有問題出現(xiàn)了。我遇到了不少問題,花費(fèi)了很多的時(shí)間。這讓我重新反思我們的學(xué)習(xí),深刻領(lǐng)悟到我們這個(gè)專業(yè)動(dòng)手實(shí)踐的重要性。理論不經(jīng)過實(shí)踐考驗(yàn),是沒法實(shí)施的,就像我們編的程序,很多方面考慮的都不夠,幾乎沒有涉及到實(shí)際應(yīng)用時(shí)的防范方法措施。知識是永無止境的,在今后的工作中,我會理論聯(lián)系實(shí)際,不停的去學(xué)習(xí),不停的去感悟,以彌補(bǔ)我先天的不足以及后天的差距</p><p>
89、 在畢業(yè)設(shè)計(jì)過程中,我真正體會到了實(shí)踐的重要性,很多自己認(rèn)為萬無一失的軟件代碼或者硬件電路,在調(diào)試的過程中都不會是風(fēng)平浪凈的,此次畢業(yè)設(shè)計(jì)經(jīng)歷了從概念到成品的漫長過程,在此過程中我學(xué)習(xí)了許多以前沒有掌握而又是電子類畢業(yè)生必須掌握的知識,比如proteus,從設(shè)計(jì)的第一天起,我就被proteus的強(qiáng)大功能所折服,學(xué)會了proteus,就相當(dāng)于擁有一個(gè)電子設(shè)計(jì)開發(fā)平臺。兩個(gè)多月來,我有過驚喜、失落、樂觀、自信、自卑,這次畢業(yè)設(shè)計(jì)也磨練了我
90、的心志,堅(jiān)定了我的信念,讓我學(xué)會了平淡的看待得失、冷靜的分析問題,真誠的對待他人,自信的面對生活。</p><p><b> 致 謝</b></p><p> 本設(shè)計(jì)是在xx教授的精心指導(dǎo)下完成的,從選題、方案論證、繪制電路原理圖、軟件編寫、調(diào)試仿真,直到起稿、排版,每一個(gè)環(huán)節(jié),我都遇到了我無法獨(dú)立解決的問題,在此期間,xx愿犧牲自己的業(yè)余時(shí)間,也要幫我解決
91、問題,他豐富的專業(yè)知識和和藹的態(tài)度讓我敬畏。</p><p> 在此,衷心的感謝xx教授對我畢業(yè)論文的指導(dǎo)和修改!同時(shí),向所有關(guān)心和幫助過我的老師、同學(xué)和朋友表示由衷的謝意!衷心感謝在百忙之中評閱論文和參加答辯的各位專家、教授!</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 陳大欽主編.模擬電子技術(shù)基礎(chǔ)(第二版)[
92、M]. 高等教育出版社 </p><p> [2] 閻石主編.?dāng)?shù)字電子技術(shù)基礎(chǔ)(第五版)[M]. 高等教育出版社 </p><p> [3] 譚浩強(qiáng)主編 MCS-51單片機(jī)應(yīng)用教程[M]. 清華大學(xué)出版社 </p><p> [4] 周復(fù)三主編 音樂基礎(chǔ)理論教程[M]. 山東大學(xué)出版社</p><p> [5] 李軍主編 單片機(jī)高級實(shí)
93、例開發(fā)指南[M]. 北京航空航天大學(xué)出版社 </p><p> [6] 歐偉明主編 單片機(jī)原理與應(yīng)用系統(tǒng)設(shè)計(jì)[M]. 電子工業(yè)出版社 </p><p> [7] 江世明主編 基于proteus的單片機(jī)應(yīng)用技術(shù)[M]. 電子工業(yè)出版社 </p><p><b> 附 錄</b></p><p> 附錄1:音樂發(fā)生器
94、電路原理圖</p><p> 附錄2:系統(tǒng)源代碼 </p><p> RS BIT P2.0 ;定義液晶顯示端口標(biāo)號</p><p> RW BIT P2.1</p><p> E BIT P2.2</p><p> ;********************************
95、************</p><p> L50MS EQU 60H</p><p> L1MS EQU 61H</p><p> L250MS EQU 62H</p><p> SEC EQU 65H</p><p> MIN EQU 64H</p&g
96、t;<p> HOU EQU 63H</p><p> ;*******************************************</p><p> org 0000h</p><p> ljmp main</p><p> ORG 000BH</p><p>&
97、lt;b> LJMP TT0</b></p><p> ORG 001BH</p><p> LJMP T1INT</p><p> org 1000h</p><p><b> main: </b></p><p> ;-------------------
98、----;液晶初始化</p><p> MOV SP,#70H </p><p> MOV P0,#01H ;清屏</p><p> CALL ENABLE</p><p> MOV P0,#38H ;8位,2行顯示</p><p> lCALL ENABLE</p&
99、gt;<p> MOV P0,#0FH ;屏顯on,光標(biāo)on,閃爍on</p><p> lCALL ENABLE</p><p> MOV P0,#06H ;計(jì)數(shù)地址加1,顯示幕on</p><p> lCALL ENABLE</p><p> ;-----------------------
100、--------內(nèi)存初始化</p><p> lcall initil </p><p> ;-------------------------------</p><p> key1: lcall key</p><p> lcall modd </p><p> ljmp
101、 key1</p><p> ;---------------------鍵盤掃描</p><p> key: nop</p><p><b> nop</b></p><p><b> lcall ks</b></p><p> jnz k1
102、 ;有按鍵轉(zhuǎn)到K1</p><p> lcall kaiji</p><p> lcall SOP</p><p> xn: ljmp key</p><p> k1: lcall modd</p><p> lcall modd</p><p><b>
103、; lcall ks</b></p><p><b> jnz k2</b></p><p><b> ljmp key</b></p><p> k2: mov R2,#0feh ;讀鍵盤</p><p> mov R4,#00h</p>&
104、lt;p> k3: mov A,R2</p><p><b> mov P1,A</b></p><p><b> mov A,P1</b></p><p> JB ACC.4,L1 ;為1跳轉(zhuǎn),第一行無按鍵</p><p> mov a,#00h</p
105、><p><b> ljmp lk</b></p><p> L1: jb acc.5,L2</p><p> mov a,#04h</p><p><b> ljmp lk</b></p><p> L2: jb acc.6,L3</p&g
106、t;<p> mov a,#08h</p><p><b> ljmp lk</b></p><p> L3: jb acc.7,next1</p><p> mov a,#0ch</p><p> ;-----------------------------------------
107、--------------</p><p> lk: add a,R4</p><p><b> push acc</b></p><p> k4: lcall delay1 ;若同時(shí)有其他按鍵,則等待</p><p><b> lcall ks</b></p
108、><p><b> jnz k4</b></p><p> ;--------------------------------------------------------</p><p> mov r3,#07h </p><p><b> clr a</b></p>
109、;<p> mov r0,#30h</p><p> mov r1,#31h</p><p> mm1: mov a,@r1</p><p> mov @r0,a</p><p><b> inc r0</b></p><p><b> inc
110、r1</b></p><p> djnz r3,mm1</p><p><b> pop acc</b></p><p> mov @r0,a </p><p><b> RET</b></p><p> ;--------------------
111、----------------------------------</p><p> next1: inc R4 ;------列掃描</p><p><b> mov a,R2</b></p><p> JNB acc.3,n2</p><p><b> ljmp n1</b&
112、gt;</p><p> n2: ljmp key</p><p> n1: rl a</p><p><b> mov R2,a</b></p><p><b> ljmp k3</b></p><p> ;----------------
113、------------------------------</p><p> ks: mov a,#0f0h ;判斷P1口</p><p><b> mov P1,a</b></p><p><b> nop</b></p><p><b> nop</b
114、></p><p><b> mov a,P1</b></p><p><b> cpl a</b></p><p> anl a,#0f0h</p><p><b> RET</b></p><p> ;-------------
115、-------------------------------------</p><p><b> DELAY1:</b></p><p><b> SETB RS0</b></p><p> dl: mov R5,#0ah</p><p> dl2: mov R6
116、,#63</p><p> dl3: nop </p><p><b> nop</b></p><p> djnz R6,dl3</p><p> djnz R5,dl2 </p><p> CLR RS0 </p><p><b&g
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)—基于單片機(jī)的音樂播放器
- 畢業(yè)設(shè)計(jì)-- 基于單片機(jī)的音樂播放器設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的音樂播放器.doc
- 畢業(yè)設(shè)計(jì)(論文)-單片機(jī)音樂播放器設(shè)計(jì)
- 基于-單片機(jī)控制的音樂播放器的畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的自動(dòng)音樂播放器的設(shè)計(jì)
- 基于51單片機(jī)的音樂播放器設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--基于單片機(jī)的音樂播放器
- 基于單片機(jī)的音樂播放器設(shè)計(jì)畢業(yè)論文
- 基于單片機(jī)音樂播放器設(shè)計(jì)[文獻(xiàn)綜述]
- 基于單片機(jī)音樂播放器課程設(shè)計(jì)
- 基于單片機(jī)的自動(dòng)音樂播放器的設(shè)計(jì)
- 基于單片機(jī)音樂播放器設(shè)計(jì)軟件設(shè)計(jì)
- 基于單片機(jī)的音樂播放器設(shè)計(jì)[開題報(bào)告]
- 課程設(shè)計(jì)--基于單片機(jī)的簡易音樂播放器
- 基于單片機(jī)音樂播放器設(shè)計(jì)-課程設(shè)計(jì)論文
- 開題報(bào)告---基于單片機(jī)的自動(dòng)音樂播放器設(shè)計(jì)
- 單片機(jī)音樂播放器課程設(shè)計(jì)報(bào)告
- 開題報(bào)告---基于單片機(jī)的自動(dòng)音樂播放器設(shè)計(jì)
- 單片機(jī)音樂播放器課程設(shè)計(jì)報(bào)告
評論
0/150
提交評論