新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于C51單片機(jī)的MP3播放器設(shè)計

基于C51單片機(jī)的MP3播放器設(shè)計

作者: 時間:2009-12-16 來源:網(wǎng)絡(luò) 收藏

播放功能模塊的工作分為兩個部分:
第一部分是循環(huán)播放歌曲,該功能需要首先做一些初始化工作,解碼器一旦開始工作,就會一直向CPU請求數(shù)據(jù),直至歌曲結(jié)束,只有通過鍵盤操作才會使該功能提前結(jié)束。因為MP3文件的數(shù)據(jù)量較大,在flash存儲器內(nèi)是以頁為單位進(jìn)行存儲的,所以MP3的播放程序初始化就是要把該文件的首地址和頁數(shù)先讀出到CPU中,然后CPU可以根據(jù)如上數(shù)據(jù)進(jìn)行取數(shù)據(jù)工作。
第二部分則一直在等待中斷發(fā)生,該程序是與鍵盤結(jié)合起來的,主要用于使用者對播放過程的控制。鍵盤操作對MP3播放過程的控制還包括后退、躍進(jìn)、跳到下一首、音量控制等。因為整個播放過程的鍵盤控制功能比較單一,沒有鍵的復(fù)合操作,所以程序都很容易實現(xiàn)。當(dāng)MP3插入到USB接口時,系統(tǒng)執(zhí)行USB通訊功能模塊,該模塊主要用于對flash存儲器內(nèi)的文件數(shù)據(jù)進(jìn)行管理。固件程序是該模塊開發(fā)的主要工作,由于AT89C5lSNDlC沒有外部中斷引腳,USB中斷沒有中斷向量地址入口,因此該固件程序的框架采用查詢工作方式。


3 FAT文件格式
因為該系統(tǒng)還要具有U盤的功能,所以存儲器中的文件還要能夠讓計算機(jī)讀寫和識別,也就是所有的文件還要嚴(yán)格滿足計算機(jī)文件系統(tǒng)格式的要求。在所有計算機(jī)文件系統(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)進(jìn)行識別的關(guān)鍵信息,計算機(jī)將以此信息識別存儲器文件格式,因此十分重要。
FAT區(qū)存放的是文件分配表。操作系統(tǒng)的存儲空間是按簇來分配的,簇是操作系統(tǒng)分配的最小存儲單元,每個簇在FAT表中占據(jù)一個16位的位置,稱為一個表項。同一個文件的數(shù)據(jù)并不一定存放在存儲區(qū)的一個連續(xù)的區(qū)域內(nèi),往往會分成若干段,像一條鏈子一樣的存放,這種存儲方式稱為文件的鏈?zhǔn)酱鎯?。為了實現(xiàn)文件的鏈?zhǔn)酱鎯Γ仨殰?zhǔn)確地記錄哪些簇已經(jīng)被占用,還必須為每一個已經(jīng)占用的簇指明后繼內(nèi)容的下一個簇的簇號,對于一個文件的最后一個簇,則要指明本簇沒有后繼簇,這些就是由FAT表來存儲的。
根目錄區(qū)存放的是目錄項,每個目錄項為32個字節(jié),記錄一個文件或目錄的信息。目錄項所占的空間與目錄項的個數(shù)有關(guān)。
文件和目錄數(shù)據(jù)區(qū)是真正存放文件數(shù)據(jù)的位置,所有數(shù)據(jù)都是按照以上信息分配存儲的。


4 結(jié)束語
MP3為取得較好的壓縮效果而采用相對復(fù)雜的技術(shù),寬帶音頻信號的取樣率也較高(一般為44.1kHz以上),所以MP3編解碼的運算量和數(shù)據(jù)量都相當(dāng)龐大。MPEGLayer III解碼算法在AT89SNDlC上驗證通過并獲得較好的效果,在通過優(yōu)化后可流暢播放。由于內(nèi)核的性能限制,在緩沖時可能會有停頓。以上內(nèi)容敘述了由AT89SNDlC構(gòu)成的最小系統(tǒng)的結(jié)構(gòu),具備了便攜式MP3的基本功能。其實AT89SNDlC還支持LCD顯示和IDE接口,還可以通過對以上接口模塊進(jìn)行擴(kuò)展,構(gòu)成更大更復(fù)雜的系統(tǒng)。


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉