宗穎 張婷婷 葛耿育 樊瑾
摘要:本文以51單片機為控制核心設計一款具有多功能的MP3音樂播放器,可以從SD內(nèi)存卡或USB存儲介質(zhì)內(nèi)讀取音頻文件,實現(xiàn)播放、暫停、上下曲切換等功能,用液晶顯示屏作為歌曲信息顯示設備,可以顯示歌曲序號、總量、當前音樂時長、音效、循環(huán)模式和音量大小的顯示,以滿足人們對不同功能模式下的音樂選擇和播放。
關鍵詞:單片機;音樂播放器;語音模塊;液晶屏
中圖分類號:TP912 文獻標識碼:A 文章編號:1009-3044(2018)33-0254-02
音樂播放器分為軟件類和硬件類兩種,軟件類音樂播放器一般指的是在PC機上由高級編程語言開發(fā)出來的應用程序,可以是客戶端形式如國內(nèi)的酷狗、酷我和咪咕音樂等,也可以是嵌入在網(wǎng)頁中的播放器如網(wǎng)易音樂、蝦米音樂等;硬件類一般由單片機、存儲設備和語音模塊等組成的嵌入式一體機,便于攜帶和使用。本文所述的MP3音樂播放器由STC89C52RC單片機、BY8001-16P語音模塊和SD存儲卡等主要模塊組成,涉及硬件電路設計和軟件編程等內(nèi)容。
1 系統(tǒng)整體設計
本設計的整體設計方案框圖如圖1所示,主要包括單片機、液晶顯示屏、語音編解碼模塊、存儲模塊、按鍵模塊、揚聲器和電源模塊等。其中單片機檢測到按鍵模塊中不同的按鍵按下信號后,發(fā)送相應的串口指令給語音編解碼模塊,并控制液晶顯示屏顯示相關信息。語音編解碼模塊接收到單片機發(fā)送過來的指令后,便從存儲模塊中讀取相應的音樂格式文件,按照預先設置的播放模式和音樂風格通過揚聲器進行播放。
2硬件設計
硬件設計中包括器件的選型、芯片引腳分析和電路的整體設計。在MCU(單片機)的選型上,STC89C52RC單片機采用Intel公司的MCS-51內(nèi)核,是國產(chǎn)芯片,內(nèi)置程序存儲器容量較大,功能豐富,方便使用,引腳圖如圖2所示;液晶顯示屏選擇LCD1602,最多可以顯示兩行共32個字符,采用并行傳輸方式與單片機的P0端連接,由于該模塊經(jīng)典常用,本文不單獨列出其電路圖;語音編解碼模塊選用BY8001-16P,它是一款小巧的新型高品質(zhì)插卡MP3模塊[1],采用BY8001-SSOP24 MP3主控芯片,支持MP3、WAV格式雙解碼,24位DAC輸出,動態(tài)范圍支持90dB,信噪比支持85dB,支持UART異步串口控制:支持播放、暫停、上下曲、音量加減、選曲播放、廣告插播等,內(nèi)置音量、曲目、EQ掉電記憶功能配置TF(Micro SD)卡座,可插卡更換語音內(nèi)容,最大支持32G內(nèi)存卡,支持讀取U盤,最大支持32G;也可通過USB數(shù)據(jù)線直接更換TF里面內(nèi)容[2,3]。自帶3W的功放,直接外接喇叭即可完成播放;客戶也可外接單、雙通道功放,標準2.54mm間距DIP16排針封裝,芯片引腳圖如圖3所示,本設計選用該模塊方便整個播放器的開發(fā)。
單片機對于語音編解碼模塊的控制要根據(jù)實際的引腳功能而定,可通過串口通信數(shù)據(jù)接收引腳P30與BY8001-16P語音模塊UART異步串口數(shù)據(jù)輸出引腳3(TX)相連接獲取媒體文件。若有按鍵按下,單片機則通過串口通信數(shù)據(jù)發(fā)送引腳P31與BY8001-16P語音模塊UART異步串口數(shù)據(jù)輸入引腳2(RX)相連接并通過引腳6(SPK1)和引腳7(SPK1)外接的小喇叭做出按鍵按下的相應改變。其中引腳6(SPK1)和引腳7(SPK1)直接接小喇叭兩端,這兩根線表示音頻信號的輸出。一般是接2W/4Ω或者1W/8Ω以上喇叭,DP和DM引腳的功能是讀取U盤的內(nèi)容,具體引腳和功能說明如表1所示。
3 軟件設計
BY8001-16P語音模塊內(nèi)部設置標準UART異步串口接口,與單片機的引腳通過串口交叉連接,單片機通過串口發(fā)送一個字節(jié)的編碼指令來控制該模塊實現(xiàn)各種功能的切換和實現(xiàn),其中指令編碼的各個功能描述如表2所示。
鍵盤模塊的設計是通過手動按鍵來實現(xiàn)對MP3播放器的功能的切換[4-6]。本設計共采用8個按鍵按鈕。這八個按鍵按鈕編號為K1至K8,依次連接單片機的IO口(P10-P17共8個引腳),另一端接地。若有按鍵按下,單片機相應的引腳會被置為低電平來顯示按鍵按下。其中,K1對應上一曲,K2對應下一曲;長按K1,音量增加,長按K2,音量減小;K3對應播放快進;K4對應播放快退;K5對應暫停;K6對應重復播放;K7對應音效模式,包括流行音樂(POP)、搖滾(ROCK)、爵士(JAZZ)、原音(NO)、古典(CLASSIC)、低音效(BASS)六種音效模式,通過按鍵K7的按下實現(xiàn)切換不同的音效模式;K8對應循環(huán)模式,包括隨機播放(RANDOM)、無循環(huán)(NO)、全盤循環(huán)(ALL)、文件夾循環(huán)(FOLDER)、單曲循環(huán)(ONE)五種循環(huán)模式,通過K8的按下來切換不同模式。
軟件的程序流程圖如圖4所示,當單片機系統(tǒng)上電后進行串口和LCD1602液晶屏的初始化,設置相關特殊功能寄存器的初始值,之后執(zhí)行音樂播放相關程序,并掃描按鍵模塊是否有按鍵按下,如果檢測到有按鍵按下,則執(zhí)行相對應的程序。
4 總結(jié)
本文設計的基于STC89C52RC單片機控制、LCD1602液晶屏、BY8001-16P語音編解碼模塊、揚聲器、按鍵模塊和存儲模塊的MP3音樂播放器,實現(xiàn)了上一曲、下一曲、快進、快退、音量加減、暫停、播放、重播、音效模式、循環(huán)模式的功能。同時可以顯示當前播放歌曲序號、歌曲總數(shù)、當前播放歌曲的時長、當前播放歌曲的總時長、當前處于的音效模式、循環(huán)模式、歌曲的音量(音量變化范圍為0至30級)等功能。經(jīng)過實驗測試,達到預期的效果,具有一定的實用價值。
參考文獻:
[1] 紀鵬.基于BY8001-16P的紅外遙控音樂播放器[J].數(shù)字技術(shù)與應用,2018,36(6):98-99.
[2] 王一帆.基于單片機視角下音樂播放器的研究[J].科學技術(shù)創(chuàng)新,2017(35):70-71.
[3] 何穎,張耀楠,董昌孝.智能音樂自動彈奏、錄制、播放音樂盒的設計[J].電子設計工程,2017,25(15):42-44+50.
[4] 邱燕.基于51單片機音樂播放器的設計[J].通訊世界,2016(19):252-253.
[5] 俞宏霖,李明明,白炳斌,等.基于AT89C51單片機簡易音樂播放器設計與研究[J].無線互聯(lián)科技,2016(19):64-66.
[6] 潘俊臣.基于單片機的音樂播放器的設計[J].數(shù)碼世界,2016(6):29.
【通聯(lián)編輯:唐一東】