新聞中心

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

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

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

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


3 FAT文件格式
因?yàn)樵撓到y(tǒng)還要具有U盤的功能,所以存儲(chǔ)器中的文件還要能夠讓計(jì)算機(jī)讀寫和識(shí)別,也就是所有的文件還要嚴(yán)格滿足計(jì)算機(jī)文件系統(tǒng)格式的要求。在所有計(jì)算機(jī)文件系統(tǒng)中,F(xiàn)AT是比較常用的一種。
一個(gè)FAT文件系統(tǒng)卷由4個(gè)部分組成:保留區(qū)、FAT區(qū)、根目錄區(qū)、文件和目錄數(shù)據(jù)區(qū)。其中保留區(qū)中的第一個(gè)分區(qū)必須是BPB,也稱作“引導(dǎo)扇區(qū)”,因?yàn)樗袑?duì)文件系統(tǒng)進(jìn)行識(shí)別的關(guān)鍵信息,計(jì)算機(jī)將以此信息識(shí)別存儲(chǔ)器文件格式,因此十分重要。
FAT區(qū)存放的是文件分配表。操作系統(tǒng)的存儲(chǔ)空間是按簇來分配的,簇是操作系統(tǒng)分配的最小存儲(chǔ)單元,每個(gè)簇在FAT表中占據(jù)一個(gè)16位的位置,稱為一個(gè)表項(xiàng)。同一個(gè)文件的數(shù)據(jù)并不一定存放在存儲(chǔ)區(qū)的一個(gè)連續(xù)的區(qū)域內(nèi),往往會(huì)分成若干段,像一條鏈子一樣的存放,這種存儲(chǔ)方式稱為文件的鏈?zhǔn)酱鎯?chǔ)。為了實(shí)現(xiàn)文件的鏈?zhǔn)酱鎯?chǔ),必須準(zhǔn)確地記錄哪些簇已經(jīng)被占用,還必須為每一個(gè)已經(jīng)占用的簇指明后繼內(nèi)容的下一個(gè)簇的簇號(hào),對(duì)于一個(gè)文件的最后一個(gè)簇,則要指明本簇沒有后繼簇,這些就是由FAT表來存儲(chǔ)的。
根目錄區(qū)存放的是目錄項(xiàng),每個(gè)目錄項(xiàng)為32個(gè)字節(jié),記錄一個(gè)文件或目錄的信息。目錄項(xiàng)所占的空間與目錄項(xiàng)的個(gè)數(shù)有關(guān)。
文件和目錄數(shù)據(jù)區(qū)是真正存放文件數(shù)據(jù)的位置,所有數(shù)據(jù)都是按照以上信息分配存儲(chǔ)的。


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


上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

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

關(guān)閉