基于C51單片機的MP3硬件播放器的實現(xiàn)
出處:電子科技 發(fā)布于:2011-09-05 10:03:56
隨著人們對便攜式音樂播放器要求的提高,MP3播放器以其較小的體積和較好的音質(zhì)贏得了廣大音樂愛好者的青睞。MP3播放器是一種新興的數(shù)字音樂播放器,播放MP3、WMA等格式的文件。通過用MPEG-1 Layer 3編碼技術(shù),可以得到大約12:1壓縮的有損音樂信號。盡管MP3音樂是有損的,它在壓縮過程中對功率譜較弱的信號有所丟失,但它同CD原聲區(qū)別不大,不影響一般音樂愛好者對音樂的欣賞。MP3大大縮小了聲音文件的長度,使音樂的存儲和傳輸更方便。起初,MP3文件只能由電腦來播放,隨著互聯(lián)網(wǎng)的發(fā)展,促進了MP3播放器的產(chǎn)生,隨著人們對MP3產(chǎn)品進一步的認識和更高層次的需求,MP3發(fā)生了一系列的變化,其更加小巧精致,更人機化和情趣化,個性區(qū)分也越來越強。還出現(xiàn)了功能的融人和產(chǎn)品的整合,總之,MP3播放器正朝著功能強大、外觀豐富、價格便宜的方向發(fā)展。本設(shè)計以C51內(nèi)核單片機為,設(shè)計了MP3播放器。
1 MP3硬件設(shè)計
在該硬件系統(tǒng)的設(shè)計中,采用Atme 1公司生產(chǎn)的AT89C51SNDlC作為主控MCU。AT89C5lSNDlC是ATMEL公司專門針對MP3的需求而設(shè)計的一款多媒體8位微處理器,使用通用的C51內(nèi)核,片上集成了多種外設(shè),為MP3產(chǎn)品提供了一套方便的解決方案。該芯片對電路的高度集成大大降低了系統(tǒng)的耗電和發(fā)熱,提高了系統(tǒng)的穩(wěn)定性和速度,抗干擾能力也顯著增強。AT89C51SNDlC具有如下外設(shè)的集成,大大簡化了電路的設(shè)計:a.MP3硬件解碼器;b.可編程音頻輸出接口DAC;c.8位MCU C51:d.USBl.1控制器;e.內(nèi)建鎖相環(huán)PLL;f.多媒體卡接口適配器;g.SPI接口適配器;h.IDE/ATAPI接口;i.兩路10位ADC,8kHz;j.44個通用I/0;k.兩個16位定時器/計數(shù)器;1.硬件看門狗定時器;m.標準全工UART;n.兩線主被動模式控制器;o.SPI主被動模式控制器;p.電源管理模塊。
整個播放器的結(jié)構(gòu)框圖如圖l所示。PC機通過USB接口實現(xiàn)對U盤的MP3歌曲、文檔等數(shù)據(jù)信息的存儲。系統(tǒng)啟動后,由MCU控制將儲存于Flasht辛歌曲的碼流信息送入MP3解碼芯片中解碼,并產(chǎn)生解碼輸出。在系統(tǒng)的DAC模塊通過CS4340芯片把解碼輸出轉(zhuǎn)換為模擬音頻聲音后, 經(jīng)功放電路音頻放大并驅(qū)動耳機,實現(xiàn)MP3歌曲的播放。系統(tǒng)硬件包括主控MCU、解碼器、Flash存儲系統(tǒng)、供電系統(tǒng)、按鍵和D/A轉(zhuǎn)換器等幾部分。

1.1 解碼部分
這是MP3播放器的部件, 本設(shè)計采用硬件解碼技術(shù)。在本系統(tǒng)中筆者采用AT89C51SNDlC芯片。該芯片是一塊自帶MPEG I/II—Layer硬件解碼器和Human Interface的51內(nèi)核單片機。它可支持對8~320kbps基本數(shù)據(jù)流的解碼,支持的取樣頻率范圍為16~48kHz,非常適合于MPEG的音頻解碼, 并帶有數(shù)字語音錄音的MPEG播放模塊, 具有很高的性價比。解碼后的信號是可以直接輸出到DAC的立體聲、單聲道或雙聲道的數(shù)字信號,SP—CA751A與DAC的接口是可編程的。只要通過通用的串行I/0口和控制接口就能對MPEG比特流進行I/0和回放控制,系統(tǒng)控制器能很輕易地對MPEG音頻信號進行解碼。通過一個通用的可編程I2S接口,就能把一解碼的音頻PCM數(shù)據(jù)輸出到外部的DAC中,因此,大多數(shù)常用的音頻DAC都能和本芯片兼容,本設(shè)計采用的是CS4340芯片。
1.2 存儲部分
現(xiàn)采用1GB的FLASH存儲器,該存儲器能夠存儲19小時128kbps(達到CD音質(zhì))的音樂,該系統(tǒng)采用了SAMSUNG公司的1GB FLASH存儲芯片K9F5608UOB。
1.3 接口部分
一般通過PC的USB接口進行MP3文件的,傳輸速率為12Mbps。由于Atmel公司生產(chǎn)的AT89C5lSNDlC芯片僅支持USBl.1技術(shù)規(guī)范,因此接口速度稍慢。但對于MP3播放來說,可以滿足需要。
1.4 電源管理
便攜式MP3的體積小,可以使用兩節(jié)7號電池(3VDC)供電,同時也可以通過USB接口取電,因此采用低電壓以及進行有效的功率管理是非常必要的。
2 MP3軟件設(shè)計
硬件是設(shè)計的基礎(chǔ),軟件是設(shè)計的靈魂。MP3程序由兩大部分組成:MP3播放功能模塊和USB通訊功能模塊。此外,為了調(diào)試方便,還有調(diào)試功能模塊。此模塊在系統(tǒng)軟件調(diào)試中使用,當MP3系統(tǒng)正常工作時去除。

MP3播放功能模塊的工作分為兩個部分:
部分是循環(huán)播放MP3歌曲,該功能需要首先做一些初始化工作,MP3解碼器一旦開始工作,就會一直向CPU請求數(shù)據(jù),直至歌曲結(jié)束,只有通過鍵盤操作才會使該功能提前結(jié)束。因為MP3文件的數(shù)據(jù)量較大,在flash存儲器內(nèi)是以頁為單位進行存儲的,所以MP3的播放程序初始化就是要把該文件的首地址和頁數(shù)先讀出到CPU中,然后CPU可以根據(jù)如上數(shù)據(jù)進行取數(shù)據(jù)工作。
第二部分則一直在等待中斷發(fā)生,該程序是與鍵盤結(jié)合起來的,主要用于使用者對播放過程的控制。鍵盤操作對MP3播放過程的控制還包括后退、躍進、跳到下一首、音量控制等。因為整個播放過程的鍵盤控制功能比較單一,沒有鍵的復(fù)合操作,所以程序都很容易實現(xiàn)。當MP3播放器插入到USB接口時,系統(tǒng)執(zhí)行USB通訊功能模塊,該模塊主要用于對flash存儲器內(nèi)的文件數(shù)據(jù)進行管理。固件程序是該模塊開發(fā)的主要工作,由于AT89C5lSNDlC沒有外部中斷引腳,USB中斷沒有中斷向量地址入口,因此該固件程序的框架采用查詢工作方式。
3 FAT文件格式
因為該系統(tǒng)還要具有U盤的功能,所以存儲器中的文件還要能夠讓計算機讀寫和識別,也就是所有的文件還要嚴格滿足計算機文件系統(tǒng)格式的要求。在所有計算機文件系統(tǒng)中,F(xiàn)AT是比較常用的一種。
一個FAT文件系統(tǒng)卷由4個部分組成:保留區(qū)、FAT區(qū)、根目錄區(qū)、文件和目錄數(shù)據(jù)區(qū)。其中保留區(qū)中的個分區(qū)必須是BPB,也稱作“引導(dǎo)扇區(qū)”,因為它含有對文件系統(tǒng)進行識別的關(guān)鍵信息,計算機將以此信息識別存儲器文件格式,因此十分重要。
FAT區(qū)存放的是文件分配表。操作系統(tǒng)的存儲空間是按簇來分配的,簇是操作系統(tǒng)分配的存儲單元,每個簇在FAT表中占據(jù)一個16位的位置,稱為一個表項。同一個文件的數(shù)據(jù)并不一定存放在存儲區(qū)的一個連續(xù)的區(qū)域內(nèi),往往會分成若干段,像一條鏈子一樣的存放,這種存儲方式稱為文件的鏈式存儲。為了實現(xiàn)文件的鏈式存儲,必須準確地記錄哪些簇已經(jīng)被占用,還必須為每一個已經(jīng)占用的簇指明后繼內(nèi)容的下一個簇的簇號,對于一個文件的一個簇,則要指明本簇沒有后繼簇,這些就是由FAT表來存儲的。
根目錄區(qū)存放的是目錄項,每個目錄項為32個字節(jié),記錄一個文件或目錄的信息。目錄項所占的空間與目錄項的個數(shù)有關(guān)。
文件和目錄數(shù)據(jù)區(qū)是真正存放文件數(shù)據(jù)的位置,所有數(shù)據(jù)都是按照以上信息分配存儲的。
4 結(jié)束語
本文提出基于C51內(nèi)核單片機的MP3播放器的設(shè)計方法,此MP3播放器系統(tǒng)既有播放歌曲的功能又有U盤功能。兩種功能的轉(zhuǎn)換用USB接口檢測電路來控制。當MP3播放器上的USB設(shè)備插入PC機上的USB接口進行文件時執(zhí)行U盤功能,否則程序運行執(zhí)行MP3功能。此設(shè)計低功耗,易擴展,性價比高,與同類產(chǎn)品相比,有很強的市場競爭能力和實用價值。
參考文獻:
[1]. CS4340 datasheet http://m.58mhw.cn/datasheet/CS4340_233083.html.
版權(quán)與免責聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權(quán)行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負版權(quán)等法律責任。
如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- ARM技術(shù)架構(gòu)與應(yīng)用開發(fā)實踐指南2026/1/6 10:40:19
- 嵌入式實時操作系統(tǒng)(RTOS)選型與移植技術(shù)指南2025/12/31 10:42:31
- 工業(yè)嵌入式系統(tǒng):通信接口技術(shù)選型與抗干擾設(shè)計實踐2025/12/15 14:36:53
- 深入解析嵌入式 OPENAMP 框架:開啟異核通信新時代2025/7/22 16:27:29
- 一文快速了解OPENWRT基礎(chǔ)知識2025/7/14 16:59:04









