




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、天天津津天天獅獅學(xué)學(xué)院院畢畢業(yè)業(yè)實(shí)實(shí)踐踐報(bào)報(bào)告告 題目:題目:基于單片機(jī)的簡易音樂播放器的設(shè)計(jì)基于單片機(jī)的簡易音樂播放器的設(shè)計(jì)二級學(xué)院二級學(xué)院 電子與計(jì)算機(jī)學(xué)院電子與計(jì)算機(jī)學(xué)院 專專 業(yè)業(yè) 電子信息工程技術(shù)電子信息工程技術(shù) 學(xué)生姓名學(xué)生姓名 衛(wèi)小麗衛(wèi)小麗 指導(dǎo)教師指導(dǎo)教師 苗艷華苗艷華 20122012 年年 0606 月月 0101 日日 摘 要 本文是基于單片機(jī)控制的音樂播放器的設(shè)計(jì), 它可以實(shí)現(xiàn)音樂的播放,可以通過功能鍵來選擇樂曲,播放或暫停。共有 K1到 K4四個(gè)功能鍵,K1-K3分別播放三首不同音樂,K4為暫停鍵。主控芯片采用 AT89C52,輔以必要的電路,采用 C 語言進(jìn)行編程,
2、編程后利用 KEIL C51來進(jìn)行編譯,再將生成的 HEX 文件裝入芯片中,采用 proteus 軟件來仿真,檢驗(yàn)功能得以正常實(shí)現(xiàn)。通過燒寫不同的程序,可以實(shí)現(xiàn)多首不同音樂的更換。本文將圍繞基于單片機(jī)的自動(dòng)音樂播放器,介紹一些關(guān)于單片機(jī)的基礎(chǔ)知識、模塊電路設(shè)計(jì)、音樂播放器的原理(其中包括了音樂編程原理)、以及仿真軟件的使用。關(guān)鍵詞:單片機(jī) AT89C52,音樂播放,proteus 目目 錄錄一、功能介紹 .11.1 功能特點(diǎn) .11.2 原理說明 .1二、硬件電路設(shè)計(jì) .12.1 系統(tǒng)方案設(shè)計(jì) .12.2 模塊電路的設(shè)計(jì) .22.2.1 AT89C52 型單片機(jī)的介紹.22.2.2 單片機(jī)最小
3、系統(tǒng)的設(shè)計(jì).42.2.3 蜂鳴器電路設(shè)計(jì).52.2.4 按鍵電路設(shè)計(jì).62.2.5 LED 顯示電路設(shè)計(jì).6三、軟件設(shè)計(jì) .73.1 系統(tǒng)主模塊流程圖.73.2 音樂產(chǎn)生原理.73.2.1 音調(diào).83.2.2 節(jié)拍.9四、PROTEUS 仿真應(yīng)用.104.1 PROTEUS 軟件簡介.104.2 仿真結(jié)果 .11五、結(jié)論 .12參考文獻(xiàn) .13致謝 .14附錄 1.15附錄 2.161一、一、功能介紹功能介紹1.1 功能特點(diǎn)本設(shè)計(jì)是一個(gè)基于 AT89C52 系列單片機(jī)的音樂播放器,依據(jù)單片機(jī)技術(shù)原理,通過硬件電路設(shè)計(jì)以及軟件編譯,設(shè)計(jì)出一個(gè)多功能音樂播放器。該音樂播放器主要由按鍵電路、晶振電路
4、、復(fù)位電路以及揚(yáng)聲器組成。最后利用 proteus 對音樂播放器進(jìn)行仿真調(diào)試。1.2 原理說明當(dāng)按鍵按下時(shí),判斷鍵值,啟動(dòng)計(jì)數(shù)器 T0,產(chǎn)生一定頻率的脈沖,驅(qū)動(dòng)蜂鳴器,放出樂曲。其中:1) 硬件電路中用 P2.0-P2.3 控制 4 個(gè)按鍵,K1-K3 分別控制三首音樂,K4 為停止鍵;2)P1.0-P1.3 為 LED 顯示,四個(gè)發(fā)光二極管分別對應(yīng)四個(gè)按鍵,顯示所播放歌曲;3)用 P3.7 口控制蜂鳴器; 4)電路為 12MHz 晶振頻率工作,起振電路中 C1,C2 均為 22pf。二、硬件電路設(shè)計(jì)二、硬件電路設(shè)計(jì) 2.1 系統(tǒng)方案設(shè)計(jì)硬件方框圖如圖2-1所示。主要由單片機(jī)核心芯片 AT89
5、C52,LED 發(fā)光二極管,蜂鳴器,晶振電路,復(fù)位電路組成,由引腳輸出定時(shí)器產(chǎn)生的各種固定頻率的方波信號,然后由蜂鳴器產(chǎn)生各種頻率的聲音。由于該方案中使用內(nèi)部振蕩電路,XTAL1、XTAL2引腳外接石英晶體和微調(diào)電容構(gòu)成晶振電路。2 圖2-1 設(shè)計(jì)方框圖2.2 模塊電路的設(shè)計(jì) 2.2.1 AT89C52 型單片機(jī)的介紹AT89C52 是美國 Atmel 公司生產(chǎn)的低功耗、高性能 CMOS 8 位單片機(jī),其管腳圖如圖 2-2 所示。片內(nèi)含 8KB 的可反復(fù)檫寫的程序存儲器和 256B 的隨機(jī)存取數(shù)據(jù)存儲器(RAM),器件采用 Atmel 公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn) MCS-51
6、指令系統(tǒng),片內(nèi)配置通用 8 位中央處理器(CPU)和 Flash 存儲單元,功能強(qiáng)大的AT89C52 單片機(jī)可靈活應(yīng)用于各種控制領(lǐng)域。圖 2-2 AT89C52 引腳圖主要性能參數(shù)如下:1) 與 MCS-51 產(chǎn)品指令和引腳完全兼容;32) 8K 字節(jié)可重擦寫 Flash 閃速存儲器;3) 1000 次擦寫周期;4) 全靜態(tài)操作:0HZ-24HZ;5) 三級加密程序存儲器;6) 256*8 字節(jié)內(nèi)部 RAM;7) 32 個(gè)可編程 I/O 口線;8) 3 個(gè) 16 位定時(shí)/計(jì)數(shù)器;9) 8 個(gè)中斷源;10) 可編程串行 UART 通道;11) 低功耗空間和掉電模式。各引腳功能如下:1.時(shí)鐘引腳X
7、TAL1:接外部晶體的一個(gè)引腳。在單片機(jī)內(nèi)部,它是構(gòu)成片內(nèi)振蕩器的反相放大器的輸入端。當(dāng)采用外部振蕩器時(shí),該引腳接收振蕩器的信號,即把此信號直接接到內(nèi)部時(shí)鐘發(fā)聲器的輸入端。XTAL2:接外部晶體的另一個(gè)引腳。在單片機(jī)內(nèi)部,它是構(gòu)成內(nèi)部振蕩器的反相放大器的輸出端。當(dāng)采用外部振蕩器時(shí),此引腳應(yīng)懸浮不連接。注意:如果采用片內(nèi)的振蕩電路,要在單片機(jī)的引腳 XTAL1和 XTAL2之間連接一個(gè)石英晶體或陶瓷諧振器,并接兩個(gè)電容到地。2.控制線或其他電源的復(fù)位引腳RST:復(fù)位輸入端。ALE/:當(dāng)訪問外部寄存器時(shí),地址鎖存允許的輸出電平用于鎖存地址的低PROG位字節(jié)。:外部程序存儲器的選通信號。在有外部程序
8、存儲器取指令期間,每個(gè)機(jī)PSEN器周期兩次有效。但在訪問外部數(shù)據(jù)存儲器時(shí),這兩次有效的信號將不出PSENPSEN現(xiàn)。/Vpp:當(dāng)保持低電平時(shí),則在此期間訪問外部程序存儲器(0000H-ENENFFFFH),不管是否有內(nèi)部程序存儲器。注意要加密方式1時(shí),將內(nèi)部鎖定為ENRESET;當(dāng)斷保持高電平時(shí),此間訪問內(nèi)部程序存儲器。在 Flash 編程期間,此管EN腳也用于施加12V 編程電源(Vpp)。3. 輸入/輸出引腳P0口:P0口為一個(gè)8位漏極開路雙向 I/O 口,每腳可吸收8個(gè) TTL 門電流。當(dāng) P1口的管腳第一次寫“1”時(shí),被定義為高阻輸入。P0口能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)
9、據(jù)/地址的第八位。在 Flash 編程時(shí),P0口作為原碼輸入口,當(dāng) Flash4進(jìn)行校驗(yàn)時(shí),P0口輸出原碼,此時(shí),P0口外部必須被拉高。P1口:P1口為一個(gè)內(nèi)部提供上拉電阻的8位雙向 I/O,P1口緩沖器能接收輸出4個(gè)TTL 門電流。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) P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高。且作為輸入。并因此作為輸入時(shí),P2口的管腳被
10、外部拉底,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部8位地址數(shù)據(jù)校驗(yàn)時(shí),P2口輸出其特殊功能起存器的內(nèi)容。P2口在 Flash 編程和校驗(yàn)時(shí),接收高8位地址信號和控制信號。P3口:P3口為一個(gè)內(nèi)部提供上拉電阻的8位雙向 I/O,可接收輸出4個(gè) TTL 門電流。當(dāng) P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口也可作為一些特殊功能口,如表2-1所示。表2-1 P3口特殊功能口
11、管腳備選功能P3.0RXD串行輸入口P3.1TXD串行輸出口P3.20INT外部中斷0P3.31INT外部中斷1P3.4T0計(jì)時(shí)器0外部輸入P3.5T1計(jì)時(shí)器1外部輸入P3.6WR外部數(shù)據(jù)存儲器寫選通P3.7RD外部數(shù)據(jù)存儲器讀選通2.2.2 單片機(jī)最小系統(tǒng)的設(shè)計(jì)單片機(jī)的最小系統(tǒng)設(shè)計(jì)包括:時(shí)鐘電路、復(fù)位電路,如圖 2-3 所示。在內(nèi)部方式時(shí)鐘電路中,必須在 XTAL1 和 XTAL2 引腳兩端跨接石英晶體振蕩器和兩個(gè)微調(diào)電容構(gòu)成振蕩電路,通常 C1 和 C2 一般取 30pF,晶振的頻率取值在 1.2MHz12MHz 之間。復(fù)位電路就好比電腦的重啟部分,當(dāng)電腦在使用中出現(xiàn)死機(jī),按下重啟按鈕電腦
12、內(nèi)部的程序從頭開始執(zhí)行。其中,電容的大小是 10uF,電阻的大小是 10k。5圖2-3 單片機(jī)最小系統(tǒng)2.2.3 蜂鳴器電路設(shè)計(jì) 蜂鳴器發(fā)聲原理是電流通過電磁線圈,使電磁線圈產(chǎn)生磁場來驅(qū)動(dòng)振動(dòng)膜發(fā)聲的,因此需要一定的電流才能驅(qū)動(dòng)它,單片機(jī) IO 引腳輸出的電流較小,單片機(jī)輸出的 TTL電平基本上驅(qū)動(dòng)不了蜂鳴器,因此需要增加一個(gè)功率放大的電路。由單片機(jī) P3.7 接口外接一個(gè) 1K 電阻和兩個(gè) NPN 型三極管來驅(qū)動(dòng)蜂鳴器。其主要任務(wù)是輸出大信號和大功率,對音頻信號有效不失真的進(jìn)行放大以推動(dòng)揚(yáng)聲器發(fā)出聲音,原理圖如圖 2-4 所示。圖2-4 蜂鳴器電路62.2.4 按鍵電路設(shè)計(jì)采用 4 個(gè)按鈕來
13、實(shí)現(xiàn)選擇歌曲播放,由 P2.0-P2.3 控制,外接四個(gè) 10K 的上拉電阻,并通過三個(gè)與門接 P3.2 實(shí)現(xiàn)外部中斷。原理圖如圖 2-5 所示。圖 2-5 按鍵電路2.2.5 LED 顯示電路設(shè)計(jì)四個(gè)發(fā)光二極管分別由 P1.0-P1.3 控制,播放第一首歌時(shí) D1 亮,第二、第三首歌時(shí) D2、D3 亮,停止時(shí) D4 亮,其中電阻為 220。原理圖如圖 2-6 所示。圖 2-6 LED 顯示電路7三、軟件設(shè)計(jì)三、軟件設(shè)計(jì)3.1 系統(tǒng)主模塊流程圖主模塊是系統(tǒng)軟件的主框架。結(jié)構(gòu)化程序設(shè)計(jì)一般有“自上而下”和“自下而上”兩種方式,“自上而下”法的核心就是主框架的構(gòu)建。它的合理與否關(guān)系到程序最終的功能
14、的多少和性能的好壞。本系統(tǒng)的主模塊程序框圖如圖 3-1 所示。開始系統(tǒng)初始化,判斷是否有鍵按下,當(dāng) K1 鍵按下時(shí),播放第一首歌,K4 鍵按下停止播放,并返回到系統(tǒng)初始化,再判斷是否有鍵按下。K2、K3 鍵也分別控制兩首歌的播放。圖 3-1 系統(tǒng)主模塊流程圖3.2 音樂產(chǎn)生原理單片機(jī)發(fā)音原理:單片機(jī)演奏音樂基本是單音頻率,它不包含相應(yīng)幅度的諧波頻率,也就是說不能象電子琴那樣能奏出多種音色的聲音,但一定要弄清楚兩個(gè)概念即可,也就是“音調(diào)”和“節(jié)拍” 。8音調(diào):表示一個(gè)音符唱多高的頻率。節(jié)拍:表示一個(gè)音符唱多長的時(shí)間。3.2.1 音調(diào)在音樂中所謂“音調(diào)”,其實(shí)就是我們常說的“音高”。在音樂中常把中
15、央 C 上方的 A 音定為標(biāo)準(zhǔn)音高,其頻率 f=440Hz,其余與其比較。f1 和 f2 為兩個(gè)音符,當(dāng)這兩個(gè)音符的頻率相差一倍時(shí),也即 f2=2f1 時(shí),則稱 f2 比 f1 高一個(gè)倍頻程。在音樂中 1 與.1,2 與.2,正好相差一個(gè)倍頻程,在音樂學(xué)中稱它相差一個(gè)八度音。在一個(gè)八度音內(nèi),有 12 個(gè)半音。以 1i 八音區(qū)為例,12 個(gè)半音是:11、12、22、23、34、44,45、5 一5、56、66、67、7i 。這 12 個(gè)音階的分度基本上是以對數(shù)關(guān)系來劃分的。如果我們只要知道了這十二個(gè)音符的音高,也就是其基本音調(diào)的頻率,我們就可根據(jù)倍頻程的關(guān)系得到其他音符基本音調(diào)的頻率。確定一個(gè)頻
16、率所對應(yīng)的定時(shí)器的定時(shí)初值的方法:以標(biāo)準(zhǔn)音高 A 為例:標(biāo)準(zhǔn)音高 A 的頻率 f = 440 Hz,其對應(yīng)的周期為: T = 1/ f = 1/440 =2272s。因此,需要在單片機(jī) I/O 端口輸出周期為 T =2272s 的方波脈沖,如圖 3-2 所示。圖 3-2 方波脈沖由上圖可知,單片機(jī)上對應(yīng)蜂鳴器的 I/O 口來回取反的時(shí)間應(yīng)為:t = T/2 = 2272/2 = 1136s這個(gè)時(shí)間 t 也就是單片機(jī)上定時(shí)器應(yīng)有的中斷觸發(fā)時(shí)間。一般情況下,單片機(jī)奏樂時(shí),其定時(shí)器為工作方式 1,它以振蕩器的十二分頻信號為計(jì)數(shù)脈沖。設(shè)振蕩器頻率為f0,則定時(shí)器的予置初值由下式來確定:t = 12 *
17、(TALL THL)/ f0式中 TALL = 216 = 65536,THL為定時(shí)器待確定的計(jì)數(shù)初值。因此定時(shí)器的高低計(jì)數(shù)器的初值為:TH = THL / 256 = ( TALL t* f0/12) / 256TL = THL % 256 = ( TALL t* f0/12) %2569將 t=1136s 代入上面兩式(注意:計(jì)算時(shí)應(yīng)將時(shí)間和頻率的單位換算一致),即可求出標(biāo)準(zhǔn)音高 A 在單片機(jī)晶振頻率 f0=12Mhz,定時(shí)器在工作方式 1 下的定時(shí)器高低計(jì)數(shù)器的予置初值為 :TH440Hz = (65536 1136 * 12/12) /256 = FBHTL440Hz = (65536
18、 1136 * 12/12)%256 = 90H根據(jù)上面的求解方法,我們就可求出其他音調(diào)相應(yīng)的計(jì)數(shù)器的予置初值。3.2.2 節(jié)拍音符的節(jié)拍我們可以舉例來說明。在一張樂譜中,我們經(jīng)常會看到這樣的表達(dá)式,如 1=C 、1=G 等等,這里 1=C,1=G 表示樂譜的曲調(diào),和我們前面所談的音調(diào)4443有很大的關(guān)聯(lián),、就是用來表示節(jié)拍的。以為例加以說明,它表示樂譜中以四444343分音符為節(jié)拍,每一小結(jié)有三拍。如圖 3-3 所示。圖 3-3 音樂節(jié)拍其中 1 、2 為一拍,3、4、5 為一拍,6 為一拍共三拍。1 、2 的時(shí)長為四分音符的一半,即為八分音符長,3、4 的時(shí)長為八分音符的一半,即為十六分音
19、符長,5 的時(shí)長為四分音符的一半,即為八分音符長,6 的時(shí)長為四分音符長。那么一拍到底該唱多長呢?一般說來,如果樂曲沒有特殊說明,一拍的時(shí)長大約為 400500ms 。我們以一拍的時(shí)長為 400ms 為例,則當(dāng)以四分音符為節(jié)拍時(shí),四分音符的時(shí)長就為400ms,八分音符的時(shí)長就為 200ms,十六分音符的時(shí)長就為 100ms??梢?,在單片機(jī)上控制一個(gè)音符唱多長可采用循環(huán)延時(shí)的方法來實(shí)現(xiàn)。首先,我們確定一個(gè)基本時(shí)長的延時(shí)程序,比如說以十六分音符的時(shí)長為基本延時(shí)時(shí)間,那么,對于一個(gè)音符,如果它為十六分音符,則只需調(diào)用一次延時(shí)程序,如果它為八分音符,則只需調(diào)用二次延時(shí)程序,如果它為四分音符,則只需調(diào)用
20、四次延時(shí)程序,依次類推。通過上面關(guān)于一個(gè)音符音調(diào)和節(jié)拍的確定方法,我們就可以在單片機(jī)上實(shí)現(xiàn)演奏音樂了。具體的實(shí)現(xiàn)方法為:將樂譜中的每個(gè)音符的音調(diào)及節(jié)拍變換成相應(yīng)的音調(diào)參數(shù)和節(jié)拍參數(shù),將他們做成數(shù)據(jù)表格,存放在存儲器中,通過程序取出一個(gè)音符的相關(guān)參數(shù),播放該音符,該音符唱完后,接著取出下一個(gè)音符的相關(guān)參數(shù),如此直到播放完畢最后一個(gè)音符,根據(jù)需要也可循環(huán)不停地播放整個(gè)樂曲。另外,對于樂曲中的10休止符,一般將其音調(diào)參數(shù)設(shè)為 FFH,F(xiàn)FH,其節(jié)拍參數(shù)與其他音符的節(jié)拍參數(shù)確定方法一致,樂曲結(jié)束用節(jié)拍參數(shù)為 00H 來表示。下面給出部分音符(三個(gè)八度音)的頻率以及以單片機(jī)晶振頻率 f0=12Mhz,定
21、時(shí)器在工作方式 1 下的定時(shí)器高低計(jì)數(shù)器的予置初值,如下表 3-1 所示。表 3-1 音符頻率與定時(shí)器初值關(guān)系表C 調(diào)音符11#22#344#55#66#7頻率Hz262277293311329349370392415440466494TH/TLF88BF8F2F9B7FA14FA66FAB9FB03FB4AFB8FFBCFFBCFFC0BC 調(diào)音符11#22#344#55#66#7頻率Hz 523553586621658697739783830879931987TH/TLFC43FC78FCABFCDBFD08FD33FD5BFD81FDA5FDC7FDE7FE05C 調(diào)音符11#22#34
22、4#55#66#7頻率Hz104511061171124113161393147615631658175518601791TH/TLFB21FE3CFE55FE6DFE84FE99FEADFEC0FE02FEE3FEF3FF02四、四、ProteusProteus 仿真應(yīng)用仿真應(yīng)用4.1 Proteus 軟件簡介Proteus 軟件是英國 Labcenter electronics 公司出版的 EDA 工具軟件(該軟件中國總代理為廣州風(fēng)標(biāo)電子技術(shù)有限公司)。它不僅具有其它 EDA 工具軟件的仿真功能,還能仿真單片機(jī)及外圍器件。它是目前最好的仿真單片機(jī)及外圍器件的工具。雖然目前國內(nèi)推廣剛起步,但
23、已受到單片機(jī)愛好者、從事單片機(jī)教學(xué)的教師、致力于單片機(jī)開發(fā)應(yīng)用的科技工作者的青睞。Proteus 是世界上著名的 EDA 工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到 PCB 設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。是目前世界上唯一將電路仿真軟件、PCB 設(shè)計(jì)軟件和虛擬模11型仿真軟件三合一的設(shè)計(jì)平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086 和 MSP430 等,2010年又增加了 Cortex 和 DSP 系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持 IAR、K
24、eil 和 MPLAB 等多種編譯器。4.2 仿真結(jié)果 當(dāng)按下 K1 鍵時(shí),顯示部分電路中 D1 燈亮,同時(shí)播放第一首歌曲,仿真圖如圖 4-1 所示。K4 鍵為停止鍵,當(dāng) K4 鍵按下時(shí),同時(shí) D4 燈亮,停止播放歌曲,仿真圖如圖4-2 所示。圖 4-1 仿真效果圖 112圖 4-2 仿真效果圖 2五、結(jié)論五、結(jié)論經(jīng)過這次畢業(yè)設(shè)計(jì),我覺得自己學(xué)到了不少東西。歸納起來,主要有以下幾點(diǎn): 1、通過這次畢業(yè)設(shè)計(jì),我能將三年所學(xué)到的專業(yè)知識與實(shí)踐相聯(lián)系,將所學(xué)到的知識充分運(yùn)用到本次設(shè)計(jì)中。同時(shí),我也認(rèn)識到自己知識上不足的地方,體會到了所學(xué)理論知識的重要性,知識掌握得越多,設(shè)計(jì)得就更全面、更順利、更好。
25、2、進(jìn)一步熟悉了單片機(jī)的知識。通過本次設(shè)計(jì),我對單片機(jī)的基本原理、內(nèi)部結(jié)構(gòu)、各引腳功能、定時(shí)器和中斷的應(yīng)用都有了更深刻的理解。并且,能夠以單片機(jī)為基礎(chǔ)元件設(shè)計(jì)一個(gè)簡單的系統(tǒng)。3、提高了自己查找資料的能力。在設(shè)計(jì)過程中,我碰到了一些暫時(shí)無法解決的問題,于是我通過上網(wǎng)查閱和圖書館借閱資料,或是通過與老師同學(xué)交流一步步地解決了。從中我懂得了我們這個(gè)專業(yè)的知識面相當(dāng)廣泛,同時(shí)要懂得與他人交流意見,積極聽取別人的建議,懂得團(tuán)隊(duì)合作的重要性。13參考文獻(xiàn)參考文獻(xiàn)1 鄭郁正. 單片機(jī)原理及應(yīng)用. 四川大學(xué)出版社,2003.2 譚浩強(qiáng). C 程序設(shè)計(jì)(第二版). 清華大學(xué)出版社,1999.3 王曉君,安國臣.
26、 MCS51 及兼容單片機(jī)原理與選型. 北京:電子工業(yè)出版社,2003.4 何立民. MCS-51 系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)M. 北京航空航天大學(xué)出版社,19905 張毅剛、彭喜元、姜守達(dá)、喬立巖. 新編 MCS-51系列單片機(jī)應(yīng)用設(shè)計(jì)M. 哈爾濱工業(yè)大學(xué)出版社,2003.6.6 王東鋒. 單片機(jī) C 語言應(yīng)用 100 例. 北京:電子工業(yè)出版社,2009.7 王松武,于鑫,武思軍. 電子創(chuàng)新設(shè)計(jì)與實(shí)踐. 國防工業(yè)出版社,2005.8 張毅坤. 單片微型計(jì)算機(jī)原理及應(yīng)用. 西安:西安電子科技大學(xué)出版社,2005.9 房建東,高勝利. 單片機(jī)課程設(shè)計(jì)實(shí)例指導(dǎo). 北京航空航天出版社,2002.10
27、沙占有,王彥朋. 單片機(jī)外圍電路設(shè)計(jì). 電子工業(yè)出版社,2009.11 袁兆山. 音樂播放器. 電氣自動(dòng)化, 2006, 23(3): 53-55.12 侯靜. 簡易的單片機(jī)音樂控制. 電子信息工程,2007, 34(2): 126-128.14致謝致謝 畢業(yè)設(shè)計(jì)是大學(xué)中學(xué)習(xí)和實(shí)踐的一個(gè)重要環(huán)節(jié)。它綜合的考察了一個(gè)學(xué)生對過去所學(xué)的知識的運(yùn)用能力和對新知識吸收、消化能力,通過設(shè)計(jì),可以培養(yǎng)我們獨(dú)立思考、開拓創(chuàng)新、勇于探索的能力。在指導(dǎo)老師的精心指導(dǎo)下,我查閱了大量的文獻(xiàn)資料,經(jīng)過三個(gè)月的學(xué)習(xí)、討論、設(shè)計(jì)、調(diào)試,最終完成了設(shè)計(jì)方案。通過設(shè)計(jì),我們不僅掌握了設(shè)計(jì)的基本步驟,還學(xué)會了科學(xué)系統(tǒng)的設(shè)計(jì)方法
28、,拓寬了知識面。在本課題設(shè)計(jì)中,為了熟悉課題,我通過圖書館、互聯(lián)網(wǎng)學(xué)習(xí)查閱了許多相關(guān)的資料,加強(qiáng)了自學(xué)能力并且有意識地將掌握知識歸納總結(jié)運(yùn)用到實(shí)踐中來。 在這次畢業(yè)設(shè)計(jì)過程當(dāng)中,離不開學(xué)校指導(dǎo)老師對我們的全力支持。他們盡最大努力為我們的畢業(yè)設(shè)計(jì)提供好的條件,以使我們的畢業(yè)設(shè)計(jì)能夠順利完成。在此,我特別感謝苗艷華老師。苗老師在本次設(shè)計(jì)中給與了我很大的幫助,在理論上使我有了良好的基礎(chǔ),對整個(gè)設(shè)計(jì)有了清楚的思路。在設(shè)計(jì)過程中給我提出了許多寶貴的意見,并且?guī)椭乙黄鸾鉀Q設(shè)計(jì)中遇到的問題,為本次畢業(yè)設(shè)計(jì)耗費(fèi)了許多的心血。同時(shí),我也要感謝在設(shè)計(jì)中給予我支持的其他老師和同學(xué)!15附錄附錄 1 1整機(jī)原理圖1
29、6附錄附錄 2 2#ifndef uchar#define uchar unsigned char#endif#ifndef uint#define uint unsigned int#endif#include #include #include #include #defineledd P1/*外部函數(shù)聲明*/extern void int0_init(); /外部中斷 0 初始化/extern void key_init(); /按鍵初始化extern uchar key_scan(); /鍵值掃描/*變量聲明*/sbit led=P10;/*延時(shí)子函數(shù)*/void Delay1ms(u
30、nsigned int count)unsigned int i,j;for(i=0;icount;i+)for(j=0;j120;j+);17/*Music*/揮著翅膀的女孩unsigned char code Music_Girl= 0 x17,0 x02, 0 x17,0 x03, 0 x18,0 x03, 0 x19,0 x02, 0 x15,0 x03, 0 x16,0 x03, 0 x17,0 x03, 0 x17,0 x03, 0 x17,0 x03, 0 x18,0 x03, 0 x19,0 x02, 0 x16,0 x03, 0 x17,0 x03, 0 x18,0 x02,
31、 0 x18,0 x03, 0 x17,0 x03, 0 x15,0 x02, 0 x18,0 x03, 0 x17,0 x03, 0 x18,0 x02, 0 x10,0 x03, 0 x15,0 x03, 0 x16,0 x02, 0 x15,0 x03, 0 x16,0 x03, 0 x17,0 x02, 0 x17,0 x03, 0 x18,0 x03, 0 x19,0 x02, 0 x1A,0 x03, 0 x1B,0 x03, 0 x1F,0 x03, 0 x1F,0 x03, 0 x17,0 x03, 0 x18,0 x03, 0 x19,0 x02, 0 x16,0 x03,
32、0 x17,0 x03, 0 x18,0 x03, 0 x17,0 x03, 0 x18,0 x03, 0 x1F,0 x03, 0 x1F,0 x02, 0 x16,0 x03, 0 x17,0 x03, 0 x18,0 x03, 0 x17,0 x03, 0 x18,0 x03, 0 x20,0 x03, 0 x20,0 x02, 0 x1F,0 x03, 0 x1B,0 x03, 0 x1F,0 x66, 0 x20,0 x03, 0 x21,0 x03, 0 x20,0 x03, 0 x1F,0 x03, 0 x1B,0 x03, 0 x1F,0 x66, 0 x1F,0 x03, 0
33、 x1B,0 x03, 0 x19,0 x03, 0 x19,0 x03, 0 x15,0 x03, 0 x1A,0 x66, 0 x1A,0 x03, 0 x19,0 x03, 0 x15,0 x03, 0 x15,0 x03, 0 x17,0 x03,18 0 x16,0 x66, 0 x17,0 x04, 0 x18,0 x04, 0 x18,0 x03, 0 x19,0 x03, 0 x1F,0 x03, 0 x1B,0 x03, 0 x1F,0 x66, 0 x20,0 x03, 0 x21,0 x03, 0 x20,0 x03, 0 x1F,0 x03, 0 x1B,0 x03,
34、0 x1F,0 x66, 0 x1F,0 x03, 0 x1B,0 x03, 0 x19,0 x03, 0 x19,0 x03, 0 x15,0 x03, 0 x1A,0 x66, 0 x1A,0 x03, 0 x19,0 x03, 0 x19,0 x03, 0 x1F,0 x03, 0 x1B,0 x03, 0 x1F,0 x00, 0 x1A,0 x03, 0 x1A,0 x03, 0 x1A,0 x03, 0 x1B,0 x03, 0 x1B,0 x03, 0 x1A,0 x03, 0 x19,0 x03, 0 x19,0 x02, 0 x17,0 x03, 0 x15,0 x17, 0
35、 x15,0 x03, 0 x16,0 x03, 0 x17,0 x03, 0 x18,0 x03, 0 x17,0 x04, 0 x18,0 x0E, 0 x18,0 x03, 0 x17,0 x04, 0 x18,0 x0E, 0 x18,0 x66, 0 x17,0 x03, 0 x18,0 x03, 0 x17,0 x03, 0 x18,0 x03, 0 x20,0 x03, 0 x20,0 x02, 0 x1F,0 x03, 0 x1B,0 x03, 0 x1F,0 x66, 0 x20,0 x03, 0 x21,0 x03, 0 x20,0 x03, 0 x1F,0 x03, 0
36、x1B,0 x03, 0 x1F,0 x66, 0 x1F,0 x04, 0 x1B,0 x0E, 0 x1B,0 x03, 0 x19,0 x03, 0 x19,0 x03, 0 x15,0 x03, 0 x1A,0 x66, 0 x1A,0 x03, 0 x19,0 x03, 0 x15,0 x03, 0 x15,0 x03, 0 x17,0 x03, 0 x16,0 x66, 0 x17,0 x04, 0 x18,0 x04, 0 x18,0 x03, 0 x19,0 x03, 0 x1F,0 x03, 0 x1B,0 x03, 0 x1F,0 x66, 0 x20,0 x03, 0 x
37、21,0 x03, 0 x20,0 x03, 0 x1F,0 x03,19 0 x1B,0 x03, 0 x1F,0 x66, 0 x1F,0 x03, 0 x1B,0 x03, 0 x19,0 x03, 0 x19,0 x03, 0 x15,0 x03, 0 x1A,0 x66, 0 x1A,0 x03, 0 x19,0 x03, 0 x19,0 x03, 0 x1F,0 x03, 0 x1B,0 x03, 0 x1F,0 x00, 0 x18,0 x02, 0 x18,0 x03, 0 x1A,0 x03, 0 x19,0 x0D, 0 x15,0 x03, 0 x15,0 x02, 0
38、x18,0 x66, 0 x16,0 x02, 0 x17,0 x02, 0 x15,0 x00, 0 x00,0 x00;/同一首歌unsigned char code Music_Same= 0 x0F,0 x01, 0 x15,0 x02, 0 x16,0 x02, 0 x17,0 x66, 0 x18,0 x03, 0 x17,0 x02, 0 x15,0 x02, 0 x16,0 x01, 0 x15,0 x02, 0 x10,0 x02, 0 x15,0 x00, 0 x0F,0 x01, 0 x15,0 x02, 0 x16,0 x02, 0 x17,0 x02, 0 x17,0
39、 x03, 0 x18,0 x03, 0 x19,0 x02, 0 x15,0 x02, 0 x18,0 x66, 0 x17,0 x03, 0 x19,0 x02, 0 x16,0 x03, 0 x17,0 x03, 0 x16,0 x00, 0 x17,0 x01, 0 x19,0 x02, 0 x1B,0 x02, 0 x1B,0 x70, 0 x1A,0 x03, 0 x1A,0 x01, 0 x19,0 x02, 0 x19,0 x03, 0 x1A,0 x03, 0 x1B,0 x02, 0 x1A,0 x0D, 0 x19,0 x03, 0 x17,0 x00, 0 x18,0
40、x66, 0 x18,0 x03, 0 x19,0 x02, 0 x1A,0 x02, 0 x19,0 x0C, 0 x18,0 x0D, 0 x17,0 x03, 0 x16,0 x01, 0 x11,0 x02, 0 x11,0 x03, 0 x10,0 x03, 0 x0F,0 x0C, 0 x10,0 x02, 0 x15,0 x00, 0 x1F,0 x01, 0 x1A,0 x01, 0 x18,0 x66,20 0 x19,0 x03, 0 x1A,0 x01, 0 x1B,0 x02, 0 x1B,0 x03, 0 x1B,0 x03, 0 x1B,0 x0C, 0 x1A,0
41、 x0D, 0 x19,0 x03, 0 x17,0 x00, 0 x1F,0 x01, 0 x1A,0 x01, 0 x18,0 x66, 0 x19,0 x03, 0 x1A,0 x01, 0 x10,0 x02, 0 x10,0 x03, 0 x10,0 x03, 0 x1A,0 x0C, 0 x18,0 x0D, 0 x17,0 x03, 0 x16,0 x00, 0 x0F,0 x01, 0 x15,0 x02, 0 x16,0 x02, 0 x17,0 x70, 0 x18,0 x03, 0 x17,0 x02, 0 x15,0 x03, 0 x15,0 x03, 0 x16,0
42、x66, 0 x16,0 x03, 0 x16,0 x02, 0 x16,0 x03, 0 x15,0 x03, 0 x10,0 x02, 0 x10,0 x01, 0 x11,0 x01, 0 x11,0 x66, 0 x10,0 x03, 0 x0F,0 x0C, 0 x1A,0 x02, 0 x19,0 x02, 0 x16,0 x03, 0 x16,0 x03, 0 x18,0 x66, 0 x18,0 x03, 0 x18,0 x02, 0 x17,0 x03, 0 x16,0 x03, 0 x19,0 x00, 0 x00,0 x00 ;/兩只蝴蝶 unsigned char co
43、de Music_Two = 0 x17,0 x03, 0 x16,0 x03, 0 x17,0 x01, 0 x16,0 x03, 0 x17,0 x03, 0 x16,0 x03, 0 x15,0 x01, 0 x10,0 x03, 0 x15,0 x03, 0 x16,0 x02, 0 x16,0 x0D, 0 x17,0 x03, 0 x16,0 x03, 0 x15,0 x03, 0 x10,0 x03, 0 x10,0 x0E, 0 x15,0 x04, 0 x0F,0 x01, 0 x17,0 x03, 0 x16,0 x03, 0 x17,0 x01, 0 x16,0 x03,
44、 0 x17,0 x03, 0 x16,0 x03, 0 x15,0 x01, 0 x10,0 x03, 0 x15,0 x03, 0 x16,0 x02, 0 x16,0 x0D, 0 x17,0 x03,21 0 x16,0 x03, 0 x15,0 x03, 0 x10,0 x03, 0 x15,0 x03, 0 x16,0 x01, 0 x17,0 x03, 0 x16,0 x03, 0 x17,0 x01, 0 x16,0 x03, 0 x17,0 x03, 0 x16,0 x03, 0 x15,0 x01, 0 x10,0 x03, 0 x15,0 x03, 0 x16,0 x02
45、, 0 x16,0 x0D, 0 x17,0 x03, 0 x16,0 x03, 0 x15,0 x03, 0 x10,0 x03, 0 x10,0 x0E, 0 x15,0 x04, 0 x0F,0 x01, 0 x17,0 x03, 0 x19,0 x03, 0 x19,0 x01, 0 x19,0 x03, 0 x1A,0 x03, 0 x19,0 x03, 0 x17,0 x01, 0 x16,0 x03, 0 x16,0 x03, 0 x16,0 x02, 0 x16,0 x0D, 0 x17,0 x03, 0 x16,0 x03, 0 x15,0 x03, 0 x10,0 x03,
46、 0 x10,0 x0D, 0 x15,0 x00, 0 x19,0 x03, 0 x19,0 x03, 0 x1A,0 x03, 0 x1F,0 x03, 0 x1B,0 x03, 0 x1B,0 x03, 0 x1A,0 x03, 0 x17,0 x0D, 0 x16,0 x03, 0 x16,0 x03, 0 x16,0 x0D, 0 x17,0 x01, 0 x17,0 x03, 0 x17,0 x03, 0 x19,0 x03, 0 x1A,0 x02, 0 x1A,0 x02, 0 x10,0 x03, 0 x17,0 x0D, 0 x16,0 x03, 0 x16,0 x01,
47、0 x17,0 x03, 0 x19,0 x03, 0 x19,0 x03, 0 x17,0 x03, 0 x19,0 x02, 0 x1F,0 x02, 0 x1B,0 x03, 0 x1A,0 x03, 0 x1A,0 x0E, 0 x1B,0 x04, 0 x17,0 x02, 0 x1A,0 x03, 0 x1A,0 x03, 0 x1A,0 x0E, 0 x1B,0 x04, 0 x1A,0 x03, 0 x19,0 x03, 0 x17,0 x03, 0 x16,0 x03, 0 x17,0 x0D, 0 x16,0 x03, 0 x17,0 x03, 0 x19,0 x01, 0
48、 x19,0 x03,22 0 x19,0 x03, 0 x1A,0 x03, 0 x1F,0 x03, 0 x1B,0 x03, 0 x1B,0 x03, 0 x1A,0 x03, 0 x17,0 x0D, 0 x16,0 x03, 0 x16,0 x03, 0 x16,0 x03, 0 x17,0 x01, 0 x17,0 x03, 0 x17,0 x03, 0 x19,0 x03, 0 x1A,0 x02, 0 x1A,0 x02, 0 x10,0 x03, 0 x17,0 x0D, 0 x16,0 x03, 0 x16,0 x01, 0 x17,0 x03, 0 x19,0 x03,
49、0 x19,0 x03, 0 x17,0 x03, 0 x19,0 x03, 0 x1F,0 x02, 0 x1B,0 x03, 0 x1A,0 x03, 0 x1A,0 x0E, 0 x1B,0 x04, 0 x17,0 x02, 0 x1A,0 x03, 0 x1A,0 x03, 0 x1A,0 x0E, 0 x1B,0 x04, 0 x17,0 x16, 0 x1A,0 x03, 0 x1A,0 x03, 0 x1A,0 x0E, 0 x1B,0 x04, 0 x1A,0 x03, 0 x19,0 x03, 0 x17,0 x03, 0 x16,0 x03, 0 x0F,0 x02, 0 x10,0 x03, 0 x15,0 x00, 0 x00,0 x00 ;/*void main()/ uchar key_buff;/ key_4_interrupt();key_4int();InitialSound();while(1)/ if(key_
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 大班紀(jì)念手工活動(dòng)方案
- 大學(xué)開學(xué)課堂活動(dòng)方案
- 增長知識活動(dòng)方案
- 外出賞花活動(dòng)方案
- 夏日旺季活動(dòng)方案
- 大班孔雀活動(dòng)方案
- 大班夜宿活動(dòng)方案
- 天壇公園冬奧活動(dòng)方案
- 大討論活動(dòng)活動(dòng)方案
- 夏日購物活動(dòng)方案
- 《冠心病的規(guī)范化診》課件
- 2024年度汽車4S店門頭裝修及展示區(qū)設(shè)計(jì)合同
- 24秋國開《西方行政學(xué)說》形考任務(wù)1學(xué)習(xí)活動(dòng)(二)答案(第2套)
- 車輛保險(xiǎn)服務(wù)招投標(biāo)書范本
- 2022年人教PEP版小學(xué)四年級英語下冊期末試卷及答案
- GB 11564-2024機(jī)動(dòng)車回復(fù)反射裝置
- 《牛津英漢詞典》全集完整版TXT電子書
- 2024反詐知識競賽考試題庫及答案(三份)
- 2024年【每周一測】第四周語文五年級下冊基礎(chǔ)練習(xí)題(含答案)
- 陽光食品APP培訓(xùn)考核題庫(含答案)食品生產(chǎn)企業(yè)端
- 劇本殺店買賣協(xié)議
評論
0/150
提交評論