《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于嵌入式系統(tǒng)的多媒體音樂播放器
基于嵌入式系統(tǒng)的多媒體音樂播放器
現(xiàn)代電子技術(shù)
宮 鵬,宮 明,王瑞寶 青島大學(xué)
摘要: 基于ARM7平臺和FAT 32文件系統(tǒng),設(shè)計了該種帶有文本閱覽功能的音樂播放器。它可以正確識別并播放存儲在SD,MMC等存儲卡內(nèi)的MP3和WMA文件,支持環(huán)繞立體聲調(diào)節(jié)和重低音調(diào)節(jié);使用者還可以通過液晶屏瀏覽存儲在存儲卡內(nèi)的TXT文檔,并支持中英文兩種語言,由于得益于ARM7高達60 MHz的主頻和VS1053出色的音頻解碼能力。該系統(tǒng)還支持碼率高達320 Kb/s的MP3文件,信噪比達到了85 dB以上。同時該播放器還具有良好的人機交互界面,可以給使用者更好的使用體驗。
Abstract:
Key words :

摘要:為了改善音樂播放器傳統(tǒng)界面,擴充功能,提高音質(zhì),基于ARM7嵌入式系統(tǒng)平臺和FAT 32文件系統(tǒng),設(shè)計了一款帶有文本閱覽功能的多媒體音樂播放器。它不僅能正確識別并顯示存儲在SD,MMC等存儲卡內(nèi)的音頻文件,支持環(huán)繞立體聲調(diào)節(jié)和重低音調(diào)節(jié),還可通過液晶屏瀏覽存儲在存儲卡內(nèi)的中、英文TXT文檔。該播放器選用具有出色音頻解碼能力的VS1053解碼芯片,它支持320 Kb/s的MP3或256 Kb/s的WMA音樂文件的播放。該播放器通過視聽驗證,實現(xiàn)了4種以上不同的音效,滿足使用者對音效的不同喜好。實現(xiàn)了環(huán)繞立體聲調(diào)節(jié)和真正的立體聲雙聲道音頻輸出。同時在操作上簡單便捷,具有友好的人機界面。
關(guān)鍵詞:ARM7;SD卡;多媒體播放器;VS1053

0 引言
    嵌入式系統(tǒng)具有處理速度快、低功耗、體積小、功能強大且易于移植等優(yōu)點而得到廣泛的應(yīng)用。MP3(Moving Picture Experts Group Audio LayerⅢ)全稱是動態(tài)影像專家壓縮標(biāo)準(zhǔn)音頻層面3。它設(shè)計用來大幅度地壓縮音頻數(shù)據(jù)量,并實現(xiàn)重放的音質(zhì)與原來不經(jīng)壓縮的音頻相比沒有明顯的下降。鑒于MP3編碼方式的特點,將其作為音樂播放器的音頻文件時,可以在有限的存儲空間內(nèi)存放更多的音頻信息?,F(xiàn)在的數(shù)字音樂播放器市場,采用ARM主控+DSP音頻解碼芯片+SD存儲卡所構(gòu)成的數(shù)字音樂播放系統(tǒng)具有強大的播放能力和較好的性價比,在中、高端音頻解碼領(lǐng)域內(nèi)有著較強的生命力。本文針對嵌入式系統(tǒng)的開發(fā)特點,設(shè)計了基于嵌入式系統(tǒng)的MP3播放器。

1 系統(tǒng)組成
    系統(tǒng)主要由主控制器LPC2138、音頻解碼芯片VS1053、存儲設(shè)備SD卡、顯示設(shè)備OCM12864、輸入設(shè)備鍵盤和系統(tǒng)供電電源組成。其中各部分電路均采用模塊化設(shè)計,各模塊之伺通過杜邦線進行連接。系統(tǒng)框圖如圖1所示。

a.JPG



2 硬件系統(tǒng)
2.1 主控系統(tǒng)LPC2138
    LPC2138是支持實時仿真和跟蹤的16/32位ARM7TDMI-STM CPU,并帶有64 KB RAM和512 KB的高速FLASH存儲器。128位寬度的存儲器接口和獨特的加速結(jié)構(gòu)使32位代碼能夠在最高時鐘速率下運行。ARM7體系為32位構(gòu)架,它在處理數(shù)據(jù)時相對于8位單片機效率明顯提高,在處理文件系統(tǒng)所需要的大量的長整形數(shù)據(jù)的乘除運算時這種優(yōu)勢更為明顯。同時它的硬件SPI,SSP總線控制器可以使控制器方便的與外部擴展設(shè)備進行連接。而且它的性價比較高,很適合用來做數(shù)字音樂播放系統(tǒng)的主控制器。
2.2 音頻解碼器VS1053
    VS1053是VLSI Solution Oy公司生產(chǎn)的高性能、低功耗的以VS_DSP為內(nèi)核的一款音頻解碼芯片,可輕松解碼MP1,MP2,MP3,WMA,IMA ADPCM,General Midi 1,Ogg Vorbis,LC-AAC和HE-AAC等音頻格式的文件,片內(nèi)還集成有16 KB RAM。該芯片具有高信噪比DAC,功耗更低,并具有環(huán)繞立體聲調(diào)節(jié)和高低頻渲染等功能。采用VS1053芯片可以在不提高CPU主頻的情況下實現(xiàn)320 Kb/s的MP3文件或256 Kb/s的WMA文件的音頻解碼工作,并且音質(zhì)上有了明顯的提高,信噪比可達90 dB以上,滿足系統(tǒng)85 dB的要求。
2.3 I/O口分配
    LPC2138主控制器直接采用了廣州周立功公司的EasyARM開發(fā)板,減短了開發(fā)時間并有效保證了電路部分的穩(wěn)定性。系統(tǒng)晶振采用11.059 2MHz的外部晶振,通過內(nèi)置的PLL倍頻電路,可以將主頻升高到44.236 8 MHz,滿足系統(tǒng)要求。I/O資源分配如表1所示。

b.JPG


    LPC2138具有2個獨立的SPI總線控制器(其中一個由SSP配置得到),SD卡均可通過SPI總線和處理器通信。將SPI接口分配給SD卡。
    對于液晶屏,通過I/O口模擬其串行通信時序,因此只需分配兩個I/O(數(shù)據(jù)線和時鐘線)即可。
    對于鍵盤部分,考慮到使用者操作的便捷性,共設(shè)計了5個按鍵。由于LPC2138的I/O資源非常豐富且該音樂播放器使用按鍵數(shù)量較少,故不采用矩陣譯碼鍵盤而直接使用了5個通用I/O口。這樣簡化了硬件設(shè)計和程序設(shè)計。
2.4 SD卡存儲器模塊
    SD卡的通信線在總線空閑狀態(tài)下應(yīng)保持高電平,因此總線上接有50 kΩ的上拉電阻。SD卡在上電初期,卡主控通過檢測引腳1(DAT3)的電平來決定工作在SD模式還是SPI模式。當(dāng)此腳高電平時,SD卡進入SD模式;當(dāng)此腳為低電平時,SD卡則工作于SPI模式2??ú鄄捎昧朔菑棾鍪降目ㄗ?,可以有效地保證SD卡通信的穩(wěn)定性和可靠性。采用杜邦線將SD卡的SPI總線接口和LPC2138的SSP總線接口對接起來,實現(xiàn)數(shù)據(jù)的通信。
2.5 OCM12864液晶顯示
    OCM12864液晶屏可以顯示字母、數(shù)字符號、中文字型及圖形,具有繪圖及文字畫面混合顯示功能。它提供3種控制接口,分別是8位微處理器接口,4位微處理器接口和串行接口。在該系統(tǒng)中由于未涉及圖形顯示,且對顯示的速度要求不是很高,因此采用串行接口實現(xiàn)與處理器的通信。OCM12864通過SCLK線和R/W線實現(xiàn)和處理器的串行通信。根據(jù)表1,將SCLK和R/W線與單片機分配的對應(yīng)I/O用杜邦線連接起來即可。
2.6 MP3聲音輸出的功放單元采用UTC2822D
    UTD2822D輸入電壓在1.8~15 V之間,在正常發(fā)熱狀態(tài)下工作電流約為1.4 A,可以使用在該設(shè)計當(dāng)中。功放電路的設(shè)計原理圖如圖2所示。

c.JPG


2.7 輸入設(shè)備
    鍵盤輸入采用了普通按鍵直接接處理器I/O口的方式。這種方式實現(xiàn)起來比較簡單,而且由于按鍵較少,不會占用過多的I/O資源。

3 系統(tǒng)軟件設(shè)計
    總體軟件設(shè)計即系統(tǒng)運行過程中的主邏輯,負(fù)責(zé)整個系統(tǒng)運行過程中各個狀態(tài)之間的轉(zhuǎn)換,程序流程圖如圖3,系統(tǒng)初始化完成以后,在音樂模式下,即可通過按鍵選擇音樂目錄中的音樂,解碼WMA,MP3等格式的音頻文件,并播放。
3.1 SD卡模塊程序設(shè)計
    對SD卡的初始化后,才可以對SD卡進行讀/寫操作。SD卡的初始化過程為先發(fā)送74個CLK以使SD卡達到正常工作電壓并實現(xiàn)同步,然后CS_LOW;接著發(fā)送CMD0,若通信成功則應(yīng)收到0x01的應(yīng)答信號;接著再發(fā)送CMD1,收到的應(yīng)答應(yīng)該是0x00;最后CS_HIGH。至此,初始化完成。在初始化完成后,通過CMD16設(shè)置數(shù)據(jù)Block長度,然后可以通過CMD17進行數(shù)據(jù)的讀取,流程圖如圖4所示。

d.JPG


3.2 VS1053程序設(shè)計
    VS1053采用SPI總線與處理器實現(xiàn)通信,因此基本的通信規(guī)則遵循SPI總線協(xié)議。VS1053數(shù)據(jù)處理流程如圖5所示。對VS1053的操作主要包括復(fù)位和音頻數(shù)據(jù)傳送兩個方面。對于音量設(shè)定,環(huán)繞立體聲設(shè)定、高低頻設(shè)定等,只需發(fā)送指令到特定的寄存器即可。發(fā)送數(shù)據(jù)時1次發(fā)送32 B到VS1053的數(shù)據(jù)緩沖區(qū)。在數(shù)據(jù)處理過程中DREQ為低,此時不允許繼續(xù)發(fā)送數(shù)據(jù),待數(shù)據(jù)緩沖區(qū)空時DREQ會變?yōu)楦唠娖?,可接著發(fā)送下32 B的數(shù)據(jù),直到數(shù)據(jù)完全送完為止。復(fù)位流程和發(fā)送數(shù)組流程如圖6、圖7所示。

e.JPG



4 結(jié)語
    基于ARM7平臺和FAT 32文件系統(tǒng),設(shè)計了該種帶有文本閱覽功能的音樂播放器。它可以正確識別并播放存儲在SD,MMC等存儲卡內(nèi)的MP3和WMA文件,支持環(huán)繞立體聲調(diào)節(jié)和重低音調(diào)節(jié);使用者還可以通過液晶屏瀏覽存儲在存儲卡內(nèi)的TXT文檔,并支持中英文兩種語言,由于得益于ARM7高達60 MHz的主頻和VS1053出色的音頻解碼能力。該系統(tǒng)還支持碼率高達320 Kb/s的MP3文件,信噪比達到了85 dB以上。同時該播放器還具有良好的人機交互界面,可以給使用者更好的使用體驗。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。