STC89C58RD+單片機在MP3播放器設(shè)計中的應(yīng)用
摘要:隨著電子技術(shù)的發(fā)展,MP3播放器向著大容量、小型化發(fā)展。本文敘述了由STC89C58RD+單片機和VS1011E解碼芯片構(gòu)成的MP3播放器硬件結(jié)構(gòu),采用CH375USB芯片讀取數(shù)據(jù),通過Nokia5110液晶顯示,以及軟件編程思路,實現(xiàn)了一種解碼器與存儲器分離的MP3播放器設(shè)計。該播放器具有文件傳輸、存儲、顯示及音樂播放功能,具有播放聲音流暢,操作簡單,功耗低,體積小及容量大等特點。
本文引用地址:http://www.ex-cimer.com/article/145484.htm隨著人們對便攜式音樂播放器要求的提高,MP3播放器以其較小的體積和較好的音質(zhì)受到廣大音樂愛好者的青睞。起初,MP3文件由電腦來播放,后來互聯(lián)網(wǎng)的發(fā)展促進了MP3播放器的產(chǎn)生,同時MP3播放器也發(fā)生了一系列的變化,其更加小巧精致,更人機化和情趣化?,F(xiàn)在市場上MP3的款式越來越多,功能越來越豐富,但現(xiàn)有MP3播放器大多是將解碼器與存儲器一體化的。這種設(shè)計使MP3播放器方便攜帶,但也帶來了問題:一是存儲容量不易擴展;二是不利于MP3播放器在其他領(lǐng)域的應(yīng)用。將播放器與存儲器分離是MP3播放器目前發(fā)展的一個方向[1-3]。本系統(tǒng)采用STC89C58RD+單片機,結(jié)合USB接口芯片CH375、解碼芯片VS1011E、Nokia5110液晶等外圍設(shè)備設(shè)計并實現(xiàn)MP3播放器,該系統(tǒng)以USB-HOST方式讀取U盤的MP3文件并將其解碼播放,同時具備讀取音樂標簽,U盤電子書和貪吃蛇游戲等功能。
系統(tǒng)總體設(shè)計
MP3播放器是一種新興的數(shù)字音樂播放器,播放MP3、WMA等格式的文件。通過用MPEG-1 Layer 3編碼技術(shù),可以得到大約12:1壓縮的有損音樂信號。盡管MP3文件是有損的,它在壓縮過程中對功率譜較弱的信號有所丟失,但它同CD原聲區(qū)別不大,不影響一般音樂愛好者對音樂的欣賞。MP3大大縮小了聲音文件的長度,使音樂的傳輸和存儲更方便。MP3播放器系統(tǒng)結(jié)構(gòu)如圖1所示。系統(tǒng)啟動后,STC89C58RD+單片機通過USB接口芯片CH375,從U盤中獲取MP3格式文件的數(shù)據(jù),并存入片內(nèi)RAM進行緩沖,然后單片機定時將數(shù)據(jù)從緩沖區(qū)送到MP3音頻解碼芯片VS1011E,實現(xiàn)解碼并輸出音頻信號到耳機或有源音響。用戶可以通過鍵盤實現(xiàn)“啟動”、“停止”、“上一曲”、“下一曲”和“音量控制”等功能,并通過Nokia5110液晶顯示播放狀態(tài)信息。系統(tǒng)在硬件上主要包括數(shù)據(jù)讀取模塊、音頻解碼模塊和液晶顯示模塊等。
系統(tǒng)硬件模塊的實現(xiàn)
數(shù)據(jù)讀取模塊
單片機讀取MP3數(shù)據(jù)模塊包括STC89C58RD+單片機、USB接口芯片CH375和MP3格式數(shù)據(jù)存儲U盤三部分。
STC89C58RD+單片機
系統(tǒng)采用STC89C58RD+單片機,該單片機是美國STC公司設(shè)計,國內(nèi)宏晶公司生產(chǎn)的新一代51增強型單片機,引腳和指令系統(tǒng)均與51單片機兼容。它具有加密性強、超強抗干擾、超低功耗、在系統(tǒng)可編程、內(nèi)含MAX810專用復(fù)位電路等特點[4]。
該單片機采用MCS51內(nèi)核,其內(nèi)含32KB的FLASH和16KB的EEPROM,同時內(nèi)含1KB的內(nèi)部SRAM存儲空間。因而可用于音頻數(shù)據(jù)處理和顯示數(shù)據(jù)處理需要進行較大數(shù)據(jù)緩沖的情況下。該單片機最高可工作于33MHz時鐘,本系統(tǒng)中,它工作在30MHz時鐘下,能滿足系統(tǒng)對數(shù)據(jù)帶寬的要求。
CH375接口芯片
CH375是一種通用USB總線接口芯片,其內(nèi)部集成PLL倍頻器、數(shù)據(jù)緩沖區(qū)、主從USB接口SIE、被動并行接口、異步串行接口、命令解釋器、控制傳輸?shù)膮f(xié)議處理器和通用的固件程序等[5]。它有USB-HOST和USB-SLAVE兩種方式,其中USB-HOST方式支持各種常用的USB全速設(shè)備,外部單片機、MCU、DSP可以通過CH375按照相應(yīng)的USB協(xié)議與USB設(shè)備通信,這是由于在本地端,CH375具有讀、寫、片選控制線以及中斷輸出四條控制總線和八位數(shù)據(jù)總線,可以方便地掛接到單片機等控制器的系統(tǒng)總線上。CH375芯片內(nèi)部各部分的功用如下:①PLL倍頻器用于將外部輸入的12MHz時鐘倍頻到48MHz,作為USB接口SIE時鐘。②數(shù)據(jù)緩沖區(qū)用于緩沖USB接口SIE收發(fā)的數(shù)據(jù)。③主從USB接口SIE用于完成物理的USB數(shù)據(jù)接收和發(fā)送。④被動并行接口與異步串行接口用于與外部單片機交換數(shù)據(jù)。⑤URT串行接口用于代替并行接口與外部單片機交換數(shù)據(jù)。⑥命令解釋器用于分析并執(zhí)行外部單片機提交的各種命令。⑦控制傳輸?shù)膮f(xié)議處理器用于自動處理常用的控制傳輸?shù)亩鄠€階段,簡化外部固件的編程,降低了開發(fā)難度。⑧通用的固件程序?qū)崿F(xiàn)USB傳輸?shù)南嚓P(guān)協(xié)議。
數(shù)據(jù)讀取原理
數(shù)據(jù)讀取電路如圖2所示。系統(tǒng)利用單片機實現(xiàn)將U盤中的音頻數(shù)據(jù)經(jīng)CH375的USB串行接口傳送至單片機內(nèi)部RAM緩沖,以等待解碼。硬件上只需在單片機系統(tǒng)中增加一個CH375芯片,綜合成本較低,這是由于CH375內(nèi)置了USB通信協(xié)議,省去了對USB通信協(xié)議的了解,單片機可以直接調(diào)用API庫讀寫U盤中的文件數(shù)據(jù)。CH375芯片工作時,需外部為它提供12MHz的時鐘信號,它支持全速的USB-HOST主機接口,外圍元器件只需要少量晶體和電容,便可支持5V和3.3V電源電壓。
51單片機相關(guān)文章:51單片機教程
單片機相關(guān)文章:單片機教程
單片機相關(guān)文章:單片機視頻教程
單片機相關(guān)文章:單片機工作原理
評論