版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、畢業(yè)設(shè)計基于51單片機的可控數(shù)字音樂盒設(shè)計摘 要本文是一篇基于at89c51單片機的可控數(shù)字音樂盒的程序設(shè)計。該音樂盒是一個依據(jù)單片機技術(shù)原理,通過proteus仿真軟件對硬件電路進(jìn)行仿真制作以及利用keil軟件對音樂盒源程序進(jìn)行c語言編譯,而設(shè)計制作出的一個多功能數(shù)字音樂盒。該音樂盒通過控制單片機內(nèi)部的定時器來產(chǎn)生不同頻率的方波,驅(qū)動喇叭發(fā)出不同音調(diào)的音樂。該程序通過把樂譜轉(zhuǎn)化成相應(yīng)的定時常數(shù)來驅(qū)動發(fā)音設(shè)備演奏出悅耳動聽的音樂。本音樂盒一共設(shè)計了五首歌曲,同時還設(shè)計了三種led彩燈的變化花樣。在演奏歌曲時彩燈隨音調(diào)閃爍。在停止演奏歌曲時三種彩燈花樣開始閃爍。歌曲和花樣均可隨意切換。與此同時,
2、數(shù)碼管也不斷變化數(shù)字,以此顯示歌曲和彩燈花樣的序號。關(guān)鍵詞:數(shù)字音樂盒;at89c51;keil;proteus;數(shù)碼管 the designation of controllable digital music box based on 51 scm abstractthis paper explains the program designation of controllable digital music box based on at89c51. this music box is designed by the idea that a multi-functional digita
3、l music box can be made based on the technical principle of single chip microcomputer (scm), together with using the proteus to simulate the hardware circuit and using keil to programme the source of music box which is compiled with c language. this music box can produce square waves of different fr
4、equency in control of the timer inside scm, and music of different tunes by driving speaker. the program is made use of to drive the sounding equipment to play pleasant music by the way of changing music score into the corresponding timing constant.this music box is totally designed with five songs,
5、 and also with three changeable patterns of led colorful lights. while the songs are being performed, the colorful lights are flashing with tones. while the songs are stopped playing, the colorful lights start to flash with three changeable patterns. the songs and patterns can be free to switch. at
6、the same time, the digital tube is also constantly changing figures to show the serial number of the songs and the patterns of the colorful lights.key words: digital music box; at89c51; keil; proteus; digital tube目 錄1 前言-12 單片機和音樂盒硬件的功能-22.1 at89c51芯片的功能-22.2 音樂盒的硬件及其功能-43 數(shù)字音樂盒的主體設(shè)計方案-53.1 音樂盒的主體結(jié)構(gòu)
7、-53.2 主設(shè)計軟件的介紹-53.2.1 編程軟件keil的簡介-53.2.2 仿真軟件proteus的簡介-64 音樂盒硬件設(shè)計-84.1 總設(shè)計框圖-84.2 各部分硬件的作用-84.2.1時鐘振蕩電路-84.2.2 led和數(shù)碼管的設(shè)計-95 音調(diào)和節(jié)拍的設(shè)計-115.1 音調(diào)和節(jié)拍的設(shè)計以及音樂基礎(chǔ)知識-115.2 音調(diào)和節(jié)拍的編碼-136 源程序設(shè)計-146.1 音樂程序-146.2 led花樣程序-156.3 數(shù)碼管程序-167 數(shù)字音樂盒總設(shè)計圖-177.1 仿真總設(shè)計圖-177.2 實物總設(shè)計圖-188 結(jié)論-19參考文獻(xiàn)-20致謝-21附錄a總程序源代碼及注釋-221 前言
8、隨著科技越來越發(fā)達(dá),單片機技術(shù)也越來越純熟,單片機的應(yīng)用也越來越廣泛,可以說幾乎很難找到哪個領(lǐng)域沒有單片機的蹤跡。如今,單片機在各個領(lǐng)域都起著至關(guān)重要的作用1。單片機是一種集成在電路芯片,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器cpu、隨機存儲器ram、只讀存儲器rom、多種i/o口和中斷系統(tǒng)、定時器/計時器等功能(可能還包括顯示驅(qū)動電路、脈寬調(diào)制電路、模擬多路轉(zhuǎn)換器、a/d轉(zhuǎn)換器等電路)集成到一塊硅片上構(gòu)成的一個小而完善的計算機系統(tǒng)。隨著人類社會的發(fā)展,人們對于視聽方面的享受提出了更高的要求。而傳統(tǒng)的音樂盒大部分是機械型的,體積龐大,而且沉重,發(fā)音單調(diào),且不悅耳,不能實現(xiàn)大批
9、量的生產(chǎn),所以很難滿足當(dāng)代人們的需求。但是本文設(shè)計的數(shù)字音樂盒是以單片機為核心元件的數(shù)字音樂盒。單片機具有體積小、功耗低、控制功能強、擴展靈活、微型化和使用方便等優(yōu)點。因此該數(shù)字音樂盒也就具有體積小,重量輕,能演奏各種各樣的音樂,功能多,外觀絢麗多彩,使用非常方便等諸多優(yōu)點。而且具有一定的開發(fā)價值。2 單片機和音樂盒硬件的功能隨著當(dāng)代單片機技術(shù)的突飛猛進(jìn),單片機的功能也越來越強大,主要包括有:(1)單片機集成度高;(2)系統(tǒng)結(jié)構(gòu)簡單,使用方便,實現(xiàn)模塊化; (3)單片機可靠性高,處理功能強,速度快; (4)低電壓,低功耗,便于生產(chǎn)便攜式產(chǎn)品 ;(5)控制功能強大。而本文設(shè)計采用的是at89c5
10、1單片機,這是一款性價比非常高的單片機。2.1 at89c51芯片的功能at89c51是一種帶4k字節(jié)閃爍可編程可擦除只讀存儲器的低電壓,高性能cmos8位微處理器。俗稱單片機2。如圖:圖 2-1 at89c51單片機引腳圖圖 2-2 at89c51單片機實物圖引腳功能3:p0.0-p0.7:為一個8位漏級開路雙向i/o口;p1.0-p1.7:是一個內(nèi)部提供上拉電阻的8位雙向i/o口;p2.0-p2.7:為一個內(nèi)部上拉電阻的8位雙向i/o口;p3.0-p3.7:管腳是8個帶內(nèi)部上拉電阻的雙向i/o口;p3.0:rxd(串行輸入口);p3.1:txd(串行輸出口);p3.2:int0(外部中斷0
11、);p3.3:int1(外部中斷1);p3.4:t0(記時器0外部輸入);p3.6:wr(外部數(shù)據(jù)存儲器寫選通);p3.7:rd(外部數(shù)據(jù)存儲器讀選通);ea:當(dāng)ea保持低電平時,則在此期間外部程序存儲器(0000h-ffffh),不管是否有內(nèi)部程序存儲器。注意加密方式1時,ea將內(nèi)部鎖定為reset;當(dāng)ea端保持高電平時,此間內(nèi)部程序存儲器;p3.5:t1(記時器1外部輸入);ale:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié);psen:外部程序存儲器的選通信號;rst:復(fù)位輸入;xtal1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入;xtal2:來自反向振蕩器的輸出
12、。2.2 音樂盒的硬件及其功能本文設(shè)計的數(shù)字音樂盒,所需要的硬件有:at89c51芯片:主控制器;led彩燈:燈光閃爍,p1.0-p1.7控制八路led彩燈;數(shù)碼管:音樂序號顯示,p0.0-p0.6控制數(shù)碼管;晶振:給單片機正常工作提供穩(wěn)定的時鐘信號,電路為12mhz晶振頻率工作,起振電路中c1、c2均為30pf。電容:保持一個恒定的偏執(zhí)電壓供給;喇叭:發(fā)出聲音,p3.7控制喇叭電源:供電;電阻;控制電路;開關(guān):控制音樂,p3.2控制led彩燈花樣的切換,p3.3控制音樂的切換。3 數(shù)字音樂盒的主體設(shè)計方案3.1 音樂盒的主體結(jié)構(gòu)該音樂盒主要是通過控制單片機內(nèi)部的定時器來產(chǎn)生不同頻率的方波,驅(qū)
13、動喇叭發(fā)出不同音調(diào)的音樂。如圖:圖 3-1 音樂盒主體結(jié)構(gòu)框圖本設(shè)計是一個基于at89c51系列單片機的數(shù)字音樂盒,一共設(shè)計了五首不同風(fēng)格的歌曲,在播放歌曲同時八路led彩燈隨音調(diào)變化而變化,同時利用數(shù)碼管顯示歌曲的序號,以便切換歌曲。在不播放歌曲的時候還設(shè)計了八路led彩燈,可以隨意變化三種花樣,給人們帶來視聽的雙重享受。一共設(shè)計了兩個開關(guān),一個用以切換led彩燈花樣,一個用以切換歌曲。3.2 主設(shè)計軟件的介紹本次設(shè)計主要用到了兩款軟件,一款是用以對源代碼進(jìn)行c語言編程的keil軟件,另一款則是用以對實物設(shè)計進(jìn)行仿真的proteus軟件4。3.2.1 編程軟件keil的簡介要進(jìn)行單片機的開發(fā)
14、設(shè)計,首先離不開的就是軟件,而如果你使用c語言編程,那么keil幾乎就是你的不二之選,即使不使用c語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調(diào)試工具也會令你事半功倍。keil c51是美國keil software公司出品的51系列兼容單片機c語言軟件開發(fā)系統(tǒng),與匯編相比,c語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易用。keil提供了包括c編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(uvision)將這些部分組合在一起。運行keil軟件需要win98、nt、win2000、winxp等操作系統(tǒng)。c5
15、1工具包的整體結(jié)構(gòu),uvision與ishell分別是c51 for windows和for dos的集成開發(fā)環(huán)境(ide),可以完成編輯、編譯、連接、調(diào)試、仿真等整個開發(fā)流程。開發(fā)人員可用ide本身或其它編輯器編輯c或匯編源文件。然后分別由c51及c51編譯器編譯生成目標(biāo)文件(.obj)。目標(biāo)文件可由lib51創(chuàng)建生成庫文件,也可以與庫文件一起經(jīng)l51連接定位生成絕對目標(biāo)文件(.abs)。abs文件由oh51轉(zhuǎn)換成標(biāo)準(zhǔn)的hex文件,以供調(diào)試器dscope51或tscope51使用進(jìn)行源代碼級調(diào)試,也可由仿真器使用直接對目標(biāo)板進(jìn)行調(diào)試,也可以直接寫入程序存貯器如eprom中。keil c51生
16、成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。與匯編相比,c語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易用。用過匯編語言后再使用c來開發(fā),體會更加深刻。 keil c51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全windows界面。是一款非常不錯的軟件。3.2.2 仿真軟件proteus的簡介有了編譯軟件,同樣也少不了仿真軟件proteus,這是一款非常強大的仿真軟件,有了它以后,我們就可以節(jié)省大量的精力和資源,僅僅通過電腦就能模擬我們想要的東西,直至滿足我們自己的要求為止。proteus軟件是英國lab
17、center electronics公司出版的eda工具軟件。它不僅具有其它eda工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前最好的仿真單片機及外圍器件的工具。雖然目前國內(nèi)推廣剛起步,但已受到單片機愛好者、從事單片機教學(xué)的教師、致力于單片機開發(fā)應(yīng)用的科技工作者的青睞。proteus是世界上著名的eda工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機與外圍電路協(xié)同仿真,一鍵切換到pcb設(shè)計,真正實現(xiàn)了從概念到產(chǎn)品的完整設(shè)計。是目前世界上唯一將電路仿真軟件、pcb設(shè)計軟件和虛擬模型仿真軟件三合一的設(shè)計平臺,其處理器模型支持8051、hc11、pic(10、12、16、18、24、30、d
18、spic33)、avr、arm、8086和msp430等,2010年又增加了cortex和dsp系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持iar、keil和mplab等多種編譯器。在proteus繪制好原理圖后,調(diào)入已編譯好的目標(biāo)代碼文件(.hex),可以在proteus的原理圖中看到模擬的實物運行狀態(tài)和過程。proteus 是單片機課堂教學(xué)的先進(jìn)助手。proteus不僅可將許多單片機實例功能形象化,也可將許多單片機實例運行過程形象化。前者可在相當(dāng)程度上得到實物演示實驗的效果,后者則是實物演示實驗難以達(dá)到的效果。它的元器件、連接線路等卻和傳統(tǒng)的單片機實驗硬件高度對應(yīng)。這在相
19、當(dāng)程度上替代了傳統(tǒng)的單片機實驗教學(xué)的功能,例如:元器件選擇、電路連接、電路檢測、電路修改、軟件調(diào)試、運行結(jié)果等。4 音樂盒硬件設(shè)計4.1 總設(shè)計框圖通過前面的介紹,本文的設(shè)計思路已經(jīng)基本清晰,總設(shè)計框圖如下:圖 4-1 總設(shè)計框圖4.2各部分硬件的作用硬件除了at89c51芯片外,主要的就是時鐘振蕩電路、led彩燈以及數(shù)碼管的設(shè)計。4.2.1時鐘振蕩電路at89c51中有一個用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳xtal1和xtal2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或者陶瓷諧振器一起構(gòu)成自然振蕩器。外接石英晶體及電容c1、c2接在放大器的反饋回路中構(gòu)成
20、并聯(lián)振蕩電路。對外接電容c1,c2雖然沒有什么嚴(yán)格的要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易、程序及溫度穩(wěn)定性。如果使用石英晶體,我們推薦電容使用30pf-10pf,而如果使用陶瓷振蕩器建議選擇40pf-10pf。用戶也可以采用外部時鐘。采用外部時鐘的電路如圖示。這種情況下,外部時鐘脈沖接到xtal1端,即內(nèi)部時鐘發(fā)生器的輸入端,xtal2則懸空。由于外部時鐘信號是通過一個2分頻觸發(fā)器后作為內(nèi)部時鐘信號的,所以對外部時鐘信號的占空比沒有特殊要求,但最小高電平持續(xù)時間和最大的低電平持續(xù)時間應(yīng)符合產(chǎn)品技術(shù)條件的要求。振蕩器電路圖如下:圖 4-2 單片機內(nèi)部、外
21、部振蕩電路4.2.2 led和數(shù)碼管的設(shè)計(1)八路led彩燈,分別接在p1.0-p1.7這八個端口上,連接方式為共陽極,若為低電平,可使led亮起。發(fā)光二極管的亮、熄由內(nèi)部程序控制,八個led發(fā)光二極管分別對應(yīng)不同的音階,所以led會隨著音階的變化按規(guī)律亮、熄。設(shè)計如圖:圖 4-3 led設(shè)計圖(2)數(shù)碼管接在at89c51的p0端口上,數(shù)碼管采用的是共陰極數(shù)碼管5,在數(shù)碼管與端口之間接了上拉電阻以使數(shù)碼管能正常工作。如圖所示:圖 4-4 數(shù)碼管設(shè)計圖5音調(diào)和節(jié)拍的設(shè)計5.1 音調(diào)和節(jié)拍的設(shè)計以及音樂基礎(chǔ)知識一般說來,單片機演奏音樂基本都是單音頻率,它不包含相應(yīng)幅度的諧波頻率,也就是說不能像
22、電子琴那樣能奏出多種音色的聲音。因此單片機奏樂只需弄清楚兩個概念即可,也就是“音調(diào)”和節(jié)拍表示一個音符唱多長的時間6。不同音高的樂音是用c、d、e、f、g、a、b來表示,這7個字母就是音樂的音名,它們一般依次唱成do、re、mi、fa、so、la、si,即唱成簡譜的1、2、3、4、5、6、7,相當(dāng)于漢字“多來米發(fā)梭拉西”的讀音,這是唱曲時樂音的發(fā)音,所以叫“音調(diào)”,即tone。把c、d、e、f、g、a、b這一組音的距離分成12個等份,每一個等份叫一個“半音”。兩個音之間的距離有兩個“半音”,就叫“全音”。在鋼琴等鍵盤樂器上,cd、de、fg、ga、ab兩音之間隔著一個黑鍵,他們之間的距離就是全
23、音;ef、bc兩音之間沒有黑鍵相隔,它們之間的距離就是半音。通常唱成1、2、3、4、5、6、7的音叫自然音,那些在它們的左上角加上號或者b號的叫變化音。叫升記號,表示把音在原來的基礎(chǔ)上升高半音,b叫降記音,表示在原來的基礎(chǔ)上降低半音。例如高音do的頻率(1046hz)剛好是中音do的頻率(523hz)的一倍,中音do的頻率(523hz)剛好是低音do頻率(266 hz)的一倍;同樣的,高音re的頻率(1175hz)剛好是中音re的頻率(587hz)的一倍,中音re的頻率(587hz)剛好是低音re頻率(294 hz)的一倍。要產(chǎn)生音頻脈沖,只要算出某一音頻的周期(1/頻率),然后將此周期除以2
24、,即為半周期的時間。利用定時器計時這半個周期時間,每當(dāng)計時到后就將輸出脈沖的i/o反相,然后重復(fù)計時此半周期時間再對i/o反相,就可在i/o腳上得到此頻率的脈沖。利用at89c51的內(nèi)部定時器使其工作在計數(shù)器模式mode1下,改變計數(shù)值th0及tl0以產(chǎn)生不同頻率的方法。此外結(jié)束符和休止符7可以分別用代碼00h和ffh來表示,若查表結(jié)果為00h,則表示曲子終了;若查表結(jié)果為ffh,則產(chǎn)生相應(yīng)的停頓效果。在簡譜中,數(shù)字上面帶一個點就是高8度,兩個點代表高16度。數(shù)字下面帶一個點就是低8度,兩個點代表低16度。若要構(gòu)成音樂,光有音調(diào)是不夠的,還需要節(jié)拍,讓音樂具有旋律(固定的律動),而且可以調(diào)節(jié)各
25、個音的快滿度?!肮?jié)拍”,即beat,簡單說就是打拍子,就像我們聽音樂不自主的隨之拍手或跺腳。若1拍實0.5s,則1/4 拍為0.125s。至于1拍多少秒,并沒有嚴(yán)格規(guī)定,就像人的心跳一樣,大部分人的心跳是每分鐘72下,有些人快一點,有些人慢一點,只要聽的悅耳就好。音持續(xù)時間的長短即時值,一般用拍數(shù)表示。休止符表示暫停發(fā)音。一首音樂是由許多不同的音符組成的,而每個音符對應(yīng)著不同頻率,這樣就可以利用不同的頻率的組合,加以與拍數(shù)對應(yīng)的延時,構(gòu)成音樂。了解音樂的一些基礎(chǔ)知識,我們可知產(chǎn)生不同頻率的音頻脈沖即能產(chǎn)生音樂。對于單片機來說,產(chǎn)生不同頻率的脈沖是非常方便的,利用單片機的定時、計數(shù)器來產(chǎn)生這樣的
26、方波頻率信號。因此,需要弄清楚音樂中的音符和對應(yīng)的頻率,以及單片機定時計數(shù)的關(guān)系。而節(jié)拍的定義如表所示:表5-1 節(jié)拍的定義音符名稱寫法時值全音符5 四拍二分音符5二拍四分音符5一拍八分音符5半拍十六分音符5四分之一拍三十二分音符5-八分之一拍每個音符使用1個字節(jié),字節(jié)的高4位代表音符的高低,低4位代表音符的節(jié)拍,圖5.2為節(jié)拍碼的對照。如果1拍為0.4秒,1/4拍實0.1秒,只要設(shè)定延遲時間就可求得節(jié)拍的時間。假設(shè)1/4拍為1delay,則1拍應(yīng)為4delay,以此類推。所以只要求得1/4拍的delay時間,其余的節(jié)拍就是它的倍數(shù),如圖5.3為1/4和1/8節(jié)拍的時間設(shè)定。表5-2 1/4和
27、1/8節(jié)拍的時間設(shè)定曲調(diào)值delay曲調(diào)值delay調(diào)4/4125毫秒調(diào)4/462毫秒調(diào)3/4187毫秒調(diào)3/494毫秒調(diào)2/4250毫秒調(diào)2/4125毫秒5.2 音調(diào)和節(jié)拍的編碼do re mi fa so la si分別編碼為1-7,重音do編為8,重音re編為9,重音mi編為a,重音fa編為b,重音so編為c,重音la編為d,重音si編為e,停頓編為0。播放長度以十六分音符為單位(在本程序中為165ms),一拍即四分音符等于4個十六分音符,編為4,其它的播放時間以此類推。音調(diào)作為編碼的高4位,而播放時間作為低4位,如此音調(diào)和節(jié)拍就構(gòu)成了一個編碼。以0xff作為曲譜的結(jié)束標(biāo)志。舉例1:音調(diào)
28、do,發(fā)音長度為兩拍,即二分音符,將其編碼為0x18。舉例2:音調(diào)re,發(fā)音長度為半拍,即八分音符,將其編碼為0x22。歌曲播放的設(shè)計。先將歌曲的簡譜進(jìn)行編碼,儲存在一個數(shù)據(jù)類型為unsigned char 的數(shù)組中。程序從數(shù)組中取出一個數(shù),然后分離出高4位得到音調(diào),接著找出相應(yīng)的值賦給定時器0,使之定時操作蜂鳴器,得出相應(yīng)的音調(diào);接著分離出該數(shù)的低4位,得到延時時間,接著調(diào)用軟件延時。表5-3 簡譜對應(yīng)的簡譜碼、t值、節(jié)拍數(shù)簡譜發(fā)音簡譜碼節(jié)拍碼節(jié)拍數(shù)1中音do111/4拍2中音re222/4拍3中音mi333/4拍4中音fa441拍5中音so551又1/4拍6中音la661又1/2拍7中音s
29、i782拍1高音do8a2又1/2拍2高音re9c3拍3高音miaf3又3/4拍4高音fab5高音soc6高音lad7高音sie6 c源程序設(shè)計6.1 音樂程序音樂程序根據(jù)上面的音調(diào)節(jié)拍編碼方案,用第一首歌勞動最光榮為例8,編碼如下:uchar code ldzgr= /勞動最光榮0x52,0x82,0x82,0x52,0x62,0x62,0x54,0x32,0x52,0x12,0x32,0x28,/太陽光,金亮亮,雄雞唱三唱;0x52,0x84,0x52,0x62,0x62,0x54,0x52,0x81,0xa1,0x92,0x52,0x88,/花兒 醒來了,鳥兒忙梳妝0x83,0x91,0
30、x82,0x52,0x62,0x62,0x54,0x33,0x81,0x62,0x52,0x12,0x32,0x24,/小喜鵲 造新房,小蜜蜂 采蜜糖0x12,0x11,0x21,0x32,0x51,0x51,0x62,0x52,0x84,0x82,0x51,0x61,0x84,0xa4,0x92,0x52,0x86,0x02,/幸福的生活從哪里來?要靠勞動來創(chuàng)造0x52,0x81,0x81,0x82,0x52,0x62,0x61,0x81,0x54,0x32,0x51,0x61,0x53,0x31,0x12,0x32,0x24,/青青的葉兒 紅紅的花,小蝴蝶 貪玩耍0x52,0x82,0x8
31、2,0x52,0x62,0x62,0x54,0x51,0x61,0x81,0xa1,0x92,0x52,0x88,/不愛勞動 不學(xué)習(xí),我們大家不學(xué)它0x83,0x91,0x82,0x52,0x62,0x62,0x54,0x33,0x81,0x62,0x52,0x12,0x32,0x24,/要學(xué)喜鵲 造新房,要學(xué)蜜蜂 采蜜糖0x12,0x11,0x21,0x32,0x52,0x82,0x52,0x68,0x52,0x61,0x61,0x84,0xa4,0x92,0x52,0x84,0xff/勞動的快樂 說不盡,勞動的創(chuàng)造 最光榮;6.2 led花樣程序led彩燈一共有三種花樣:(1)第一種花樣:
32、花燈先從左到右依次亮、熄,然后在從右到左一次亮、熄。如圖:圖 6-1 led花樣一程序如下:uchar code huayang1=0x7f,0xbf,0xdf,0xef,0xfb,0xfd,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;/花樣一(2)第二種花樣:花燈從左右兩邊同時開始亮、熄,并向中間靠攏,然后再一次從中間同時向兩邊亮、熄。如圖:圖 6-2 led花樣二程序如下:uchar code huayang2=0x7e,0xbd,0xdb,0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xdb,0xbd,0x7e;/花樣二(3)
33、第三種花樣:奇數(shù)燈依次亮且不熄滅,奇數(shù)燈亮完后全部熄滅,接著偶數(shù)燈亮且不熄滅,偶數(shù)燈亮完后全部熄滅,然后相鄰兩個燈同時亮,并從左向右依次亮燈齊亮、熄,最后全部都亮、熄。如圖:圖 6-3 led花樣三程序如下:uchar code huayang3=0x7f,0x5f,0x57,0x55,0xbf,0xaf,0xab,0xaa,0x3f,0xcf,0xf3,0xfc,0x00;/花樣三6.3 數(shù)碼管程序數(shù)碼管用以顯示序號,當(dāng)播放第一首歌曲是顯示1,第二首為2,第三首為3,依此類推,當(dāng)不播放歌曲只顯示三種花燈花樣時始終顯示0。如圖所示:圖 6-4 數(shù)碼管仿真運行圖程序如下9:uchar code
34、num6=0x3f,0x06,0x5b,0x4f,0x66,0x6d;switch(count2) case 0:p0=num0; break; case 1:p0=num1; break; case 2:p0=num2; break; case 3:p0=num3; break; case 4:p0=num4; break; case 5:p0=num5; break; 7 數(shù)字音樂盒總設(shè)計圖與總程序7.1 仿真總設(shè)計圖仿真總圖如圖:圖7-1 仿真總設(shè)計圖7.2 實物總設(shè)計圖實物總圖如圖:圖7-2 實物總設(shè)計圖8 結(jié)論經(jīng)過一個多月的學(xué)習(xí)和研究,終于完成了凝聚了大學(xué)四年所學(xué)知識的畢業(yè)論文設(shè)計,
35、自己也感到十分高興和欣慰。通過本次設(shè)計,我更加清楚地了解單片機的功能與價值,而且在設(shè)計過程中所遇到的問題,最終都通過老師和同學(xué)的幫助再加上自己的努力一一解決,因此我從中不僅獲得了很多知識,而且還獲得了很多寶貴經(jīng)驗,這都是我終身難忘的。在拿到設(shè)計題目之初,我還很擔(dān)心,這個題目怎么完成呢,但隨著設(shè)計的一步步成功,一下就讓我信心倍增,特別是當(dāng)問題得到解決的時候,那種心情是無法言語的。雖然在設(shè)計過程中,我查閱了很多資料,遇到了一些很棘手的問題,而且在焊接實物器件的時候經(jīng)過了多次改裝、焊接、調(diào)試,但當(dāng)單片機芯片在燒錄我編輯的音樂程序后,放出優(yōu)美的音樂時,那種美妙感永遠(yuǎn)都不會忘記。本次論文設(shè)計,除了知識的
36、增長外,我從中找到了成功后的自信。這必將激勵我在以后的生活和工作中更加努力奮斗,更加斗志昂揚。參考文獻(xiàn)1 王玉鳳/劉湘黔/楊欣. 51單片機應(yīng)用從零開始. 北京:清華大學(xué)出版社,20082 陳衛(wèi)兵.單片機技術(shù)與應(yīng)用基礎(chǔ).北京:人民郵電出版社,20103 張毅剛/彭喜元.單片機原理及接口技術(shù).北京:人民郵電出版社,20084 杜樹春.基于proteus和keil c51的單片機設(shè)計與仿真.北京:電子工業(yè)出版社,20125 郭天祥.51單片機c語言教程.北京:電子工業(yè)出版社,2009:566 東方.卓越.簡譜入門基礎(chǔ)教程.北京:同心出版社出版,20097 李重光.音樂理論基礎(chǔ).北京:人民音樂出版社
37、,19628 辛笛.簡譜鋼琴即興伴奏兒歌68首.上海:上海音樂學(xué)院出版社,20109 譚浩強. c程序設(shè)計.第三版,北京:清華大學(xué)出版社,2005:10510 祁麟.唯一:王力宏歌曲精選. 安徽:安微文藝出版社,200811 金巍.歌會與節(jié)慶必唱金曲1.北京:人民音樂出版社,2009致謝這次論文的成功完成,首先感謝我的導(dǎo)師吳笳寧老師,她工作認(rèn)真負(fù)責(zé),無論什么關(guān)于論文的事都非常及時的通知我,并且耐心細(xì)致地給我審閱、批改論文,指導(dǎo)我如何解決問題,在此,我再次表示誠摯的謝意。感謝我的同學(xué)給我設(shè)計上的指導(dǎo)與幫助,在我遇到棘手的問題時,我的同學(xué)總是耐心地給我解答,最終讓我乘風(fēng)破浪到達(dá)了勝利的彼岸。大四了
38、,我們即將畢業(yè),大家都要各奔東西了,我會永遠(yuǎn)記住這份友誼,記住這四年的美好時光。感謝鞍山師范學(xué)院理化實驗室提供的各種硬件材料以及實際操作的指導(dǎo)。在這論文即將完成之際,我祝愿我的同學(xué)、朋友在畢業(yè)之后都能找到一份好工作,前程似錦。也衷心祝愿我的母校鞍山師范學(xué)院,明天更輝煌!我也會永遠(yuǎn)銘記母校的校訓(xùn)“博雅兼上,知行合一”。附錄a總程序源代碼及注釋主程序流程圖如圖:圖11-1 主程序流程圖程序如下:#include #define uchar unsigned char#define uint unsigned intsbit duan=p26;sbit key1=p32;/按key1可切換花樣sbi
39、t key2=p33;/按key2可切換歌曲sbit fm=p37;/蜂鳴器連續(xù)的io口sbit p34=p34;/矩陣鍵盤的一列uchar code huayang1=0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;/花樣1uchar code huayang2=0x7e,0xbd,0xdb,0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xdb,0xbd,0x7e;/花樣2uchar code huayang3=0x7f,0x5f,0x57,0x55,0xbf,0x
40、af,0xab,0xaa,0x3f,0xcf,0xf3,0xfc,0x00;/花樣3uchar count1;/花樣標(biāo)志uchar count2;/歌曲標(biāo)志uchar timeh,timel,i;uchar code ldzgr= /勞動最光榮0x52,0x82,0x82,0x52,0x62,0x62,0x54,0x32,0x52,0x12,0x32,0x28,/太陽光,金亮亮,雄雞唱三唱;0x52,0x84,0x52,0x62,0x62,0x54,0x52,0x81,0xa1,0x92,0x52,0x88,/花兒 醒來了,鳥兒忙梳妝0x83,0x91,0x82,0x52,0x62,0x62,
41、0x54,0x33,0x81,0x62,0x52,0x12,0x32,0x24,/小喜鵲 造新房,小蜜蜂 采蜜糖0x12,0x11,0x21,0x32,0x51,0x51,0x62,0x52,0x84,0x82,0x51,0x61,0x84,0xa4,0x92,0x52,0x86,0x02,/幸福的生活從哪里來?要靠勞動來創(chuàng)造0x52,0x81,0x81,0x82,0x52,0x62,0x61,0x81,0x54,0x32,0x51,0x61,0x53,0x31,0x12,0x32,0x24,/青青的葉兒 紅紅的花,小蝴蝶 貪玩耍0x52,0x82,0x82,0x52,0x62,0x62,0x
42、54,0x51,0x61,0x81,0xa1,0x92,0x52,0x88,/不愛勞動 不學(xué)習(xí),我們大家不學(xué)它0x83,0x91,0x82,0x52,0x62,0x62,0x54,0x33,0x81,0x62,0x52,0x12,0x32,0x24,/要學(xué)喜鵲 造新房,要學(xué)蜜蜂 采蜜糖0x12,0x11,0x21,0x32,0x52,0x82,0x52,0x68,0x52,0x61,0x61,0x84,0xa4,0x92,0x52,0x84,0xff/歌曲結(jié)束符號/勞動的快樂 說不盡,勞動的創(chuàng)造 最光榮;uchar code wy= /唯一100x33,0x53,0x63,0x53,0x63,
43、0x73,0x63,0x33,0x53,0x03,0x53,0x53,0x53,0x43,0x44,0x52,0x43,0x33,0x22,0x14,0x38,/我的天空多么的清新,透明的承諾是過去的空氣0x04,0x43,0x43,0x43,0x33,0x23,0x13,0x38,0x03,0x13,0x23,0x13,0x33,0x26,0x04,0x33,0x23,0x13,0x2c,0x04,/牽著我的手是你,但你的笑容卻看不清0x33,0x53,0x63,0x53,0x63,0x73,0x63,0x33,0x55,0x03,0x53,0x53,0x53,0x43,0x44,0x52,
44、0x43,0x33,0x23,0x13,0x35,/是否一顆星星變了心,從前的愿望也全都被拋棄0x04,0x43,0x43,0x43,0x33,0x23,0x13,0x33,0x54,0x83,0x83,0x93,0xa3,0x92,0x81,0x63,0x62,0xa3,0x93,0x83,0x96,0x04,0x04,/最近我無法呼吸,連自己的影子也都想逃避0xa4,0x94,0x82,0x82,0x82,0x52,0x82,0x92,0xa4,/ba by 你就是我的唯一0x72,0x72,0x72,0x52,0x72,0x82,0x94,0x04,0xa2,0xa2,0xb2,0xa2
45、,0x82,0x92,/兩個世界都變心,回去談何容易0x04,0xa4,0x94,0x82,0x82,0x82,0x52,0x82,0x92,0xa4,/確定 你就是我的唯一0x72,0x72,0x72,0x52,0x72,0x82,0x92,0xa2,0x84,0x64,0x03,0x51,0xb2,0xa2,0x82,0x61,0x51,/獨自對著電話說我愛你,我真的愛你0x04,0xa4,0x94,0x82,0x82,0x82,0x82,0x72,0x82,0x52,0x32,0x68,/baby 我已不能多愛你一些0x02,0xa4,0x94,0x82,0x82,0x82,0x82,0
46、x72,0x82,0x54,0x42,0x66,0xff/其實 早已超過了愛的極限 ;uchar code tzdn= /同桌的你110x56,0x56,0x32,0x42,0x52,0x76,0x66,0x56,0x52,0x22,0x32,0x46,0x16,0x26,0x04,/前奏0x52,0x52,0x52,0x52,0x32,0x42,0x56,0x86,0x62,0x62,0x62,0x62,0x42,0x62,0x56,0x04,/明天你是否會想起,昨天你寫的日記0x52,0x52,0x52,0x52,0x72,0x62,0x52,0x44,0x02,0x42,0x42,0x4
47、2,0x42,0x33,0x21,0x16,0x02,/明天你是否還惦記,曾經(jīng)最愛哭的你0x82,0x82,0x82,0x82,0x52,0x32,0x86,0x82,0xa4,0x92,0x92,0x92,0x93,0x81,0x72,0x66,0x02,/誰娶了多愁善感的你,誰看了你的日記0x72,0x72,0x72,0x72,0x72,0x82,0x96,0x54,0x02,0x72,0x72,0x82,0x92,0x82,0x72,0x16,0x02,/誰把你的長發(fā)盤起,誰給你做的嫁衣0x84,0x82,0x82,0x52,0x62,0x86,0xa6,0x94,0x92,0x92,0
48、x82,0x72,0x66,0x74,0x72,0x72,0x72,0x82,0x96,0x56,/啦,啦,啦0x72,0x72,0x82,0x92,0x82,0x72,0x86,0x94,0x92,0x92,0x62,0x72,0x96,0xb6,0x94,0x92,0x92,0x82,0x72,0x66,/啦,啦,啦0x72,0x72,0x72,0x72,0x72,0x82,0x96,0x56,0x72,0x72,0x82,0x92,0x82,0x72,0x96,0x86,0xff/啦,啦,啦,啦;uchar code hlw= /小小葫蘆娃0x83,0x63,0x51,0x61,0x03,0x81,0x61,0x51,0x81,0x63,0x01,0x81,0x61,0x63,0x51,0x63,0x01,0x61,0x
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024專利知識產(chǎn)權(quán)合同
- 2024五星級酒店食品供應(yīng)與采購勞務(wù)合同
- 2024外架搭設(shè)合同
- 2024軟件項目委托開發(fā)合同
- 2024年度旅游景點開發(fā)合作協(xié)議
- 2024年度安置房買賣合同中的違約責(zé)任
- 2024年度新能源項目開發(fā)建設(shè)合同
- 文書模板-充電樁股份轉(zhuǎn)讓合同
- 2024年度貨物買賣合同商品描述與支付方式詳解
- 2024年幼兒園教育聯(lián)盟協(xié)議
- 國開電大 可編程控制器應(yīng)用實訓(xùn) 形考任務(wù)6實訓(xùn)報告
- GB/T 34120-2023電化學(xué)儲能系統(tǒng)儲能變流器技術(shù)要求
- 跨國企業(yè)中方外派人員的跨文化適應(yīng)
- 《道路交叉設(shè)計》課件
- 《活著》讀后感-課件
- 體檢報告匯總分析中風(fēng)險的防范
- 村里建群管理制度
- 【城市軌道交通運營安全管理研究5300字】
- 2024年中核匯能有限公司招聘筆試參考題庫含答案解析
- 上海市2024屆高三7月模擬預(yù)測歷史試題(等級考)(解析版)
- 肺炎護(hù)理查房課件
評論
0/150
提交評論