【正文】
自主產(chǎn)權(quán)的低功耗DSP這是普通51單片機(jī)所沒有的先天優(yōu)勢。內(nèi)部集成MAX810專用復(fù)位電路、2路PWM、8路高速10位A/D轉(zhuǎn)換(250K/S)、雙串口、特別適用強(qiáng)干擾場合。35MHz,相當(dāng)于普通8051的 STC12C5A60S2單片機(jī)是宏晶科技生產(chǎn)的單時鐘/機(jī)器周期(1T)的單片機(jī),是高速/低功耗/超強(qiáng)抗干擾的新一代8051單片機(jī),指令代碼完全兼容傳統(tǒng)8051,但速度快812倍(工作頻率范圍:0寫入單片機(jī)內(nèi)的程序還可以進(jìn)行加密,這又很好地保護(hù)了你的勞動成果。而且STC系列單片機(jī)支持串口程序燒寫。ROM,這種工藝的存儲器用戶可以用電的方式瞬間擦除、改寫。公司的1T增強(qiáng)系列更具有競爭力,因他不但和8051指令、管腳完全兼容,而且其片內(nèi)的具有大容量程序存儲器且是FLASH工藝的,如STC12C5A60S2單片機(jī)內(nèi)部就自帶高達(dá)60KMCU收到用戶的按鍵信息后會根據(jù)不同的指令對對應(yīng)的文件名進(jìn)行讀取,并將數(shù)據(jù)流直接送到VS1003解碼模塊進(jìn)行解碼,用戶即可通過解碼模塊VS103的音頻口聽到優(yōu)雅的音樂了,同時,MCU會將該音頻文件的其他信息顯示到LCD上,包括MP3文件名,播放時長,以方便用戶閱覽并后續(xù)的操作,另外,為方便設(shè)計期間對代碼的調(diào)試,也添加了serial串口模塊(可裁剪),以方便開發(fā)人員軟件設(shè)計的調(diào)試,可通過設(shè)置宏定義使得開發(fā)期間使能串口打印功能,而當(dāng)完成調(diào)試relase的時候禁止打印功能即可。 因此,本設(shè)計最終方案以STC12C5A60S2為主控芯片,MicroSD卡為音頻存儲設(shè)備,VS1003為音頻解碼模塊,TFT彩屏為人機(jī)交互界面,通過主控MCU搭載的Petit FatFs文件傳統(tǒng)對MicroSD卡上的音頻文件進(jìn)行檢索并顯示在界面,根據(jù)用戶選擇將相應(yīng)音頻文件輸出至VS1003模塊進(jìn)行解碼播放,同時將其信息如歌曲名,歌詞,播放時長等顯示到界面。其提供的函數(shù)接口足以滿足我們對存儲設(shè)備的操作,但由于本設(shè)計所使用的處理器為STC12C5A60S2,內(nèi)部資源尤其是RAM非常有限,且大部分的函數(shù)功能不需要用到,因此采用Petit FatFs文件傳統(tǒng),Petit FatFs 是FatFs的精簡版,比較適用于低端8位單片機(jī)中。因此,它獨(dú)立(不依賴)于硬件架構(gòu)。(5) 文件系統(tǒng)選擇:對音頻文件的存儲,管理,檢索,播放離不開文件系統(tǒng)的支持,而當(dāng)前對存儲設(shè)備管理的文件系統(tǒng)當(dāng)屬FatFS,FatFS是一個為小型嵌入式系統(tǒng)設(shè)計的通用FAT(File Allocation Table)開源文件系統(tǒng)。(3) 存儲煤質(zhì)選擇:一首歌的大小普遍在3~4MB左右,音質(zhì)稍微好點(diǎn)的基本在5MB以上,顯然存儲在處理器內(nèi)部是不現(xiàn)實(shí)的,這要求外設(shè)存儲設(shè)備,且需要大容量的,可以選擇外接Flash,MicroSD卡,U盤等,由于Flash是焊接到PCB上,一旦確定其大小就被固定了,對后續(xù)升級不便,且也不方便移動和攜帶,而MicroSD卡和U盤是不錯的選擇,大容量,可插拔,價格不貴容易購買,考慮到SD卡和microSD卡兼容,大部分人相機(jī)用的是SD卡而手機(jī)用的就是microSD卡,所以本設(shè)計選擇以MicroSD卡作為音頻的存儲設(shè)備。常見的MP3解碼芯片有VS100X系列和STA01X系列,由于VS100X系列不僅自帶DAC輸出功能,支持MPWMA、WAV、MIDI等音頻格式,還具有調(diào)節(jié)音量,高低音等,更為可喜的是具有MIC功能。(2) 解碼方式選擇:音頻解碼可分為軟解碼和硬解碼兩種方式,軟解碼需要大量的運(yùn)算,無論是空間資源還是時間資源都消耗很大,因此要求處理器的存儲容量(存儲軟解碼代碼的ROM和運(yùn)行時所需的RAM)及處理速度都要求很高,市面上的一般的單片機(jī)甚至ARM7都很難做到對音頻流暢無壓力的解碼,何況解碼后的數(shù)據(jù)還要DAC轉(zhuǎn)換才能形成模擬信號,要是其DAC驅(qū)動能力不夠的話,還需另外添加功率放大電路,總之付出的硬件成本是比較高的。 方案論證(1) 主控芯片選擇:作為本設(shè)計的核心大腦,主控芯片必須具有能夠富有余力的執(zhí)行整個代碼流程的能力,這在其處理速度上有著硬性要求,照此看來,ARM系列或者STM系列或是不錯的選擇,無論是其強(qiáng)大的處理速度還是豐富的接口,都有比其他處理器有著先天的優(yōu)勢,但對于MP3播放器這一類的電子產(chǎn)品,其價格是其致命傷,成本控制同樣是重要的考量因素,而51單片機(jī)似乎是個不錯的選擇,成本低,市場量高,是一款成熟的處理器,很多中低端的產(chǎn)品都有它的身影,支持度也很好,唯一的缺點(diǎn)是處理速度不夠快,為此,我選擇51系列的增強(qiáng)版STC12C5A60S2,該款單片機(jī)不僅價格便宜,使用度廣,同時1T最高可達(dá)35MHZ的處理速度相較于AVR也毫不遜色,接口也基本滿足設(shè)計需求。 設(shè)計意義隨著電子技術(shù)的發(fā)展,MP3播放器向大容量、高音質(zhì)、小巧便攜方向不斷發(fā)展,如今的MP3播放器基本與存儲器一體設(shè)計,使MP3播放器更加的便于攜帶,但與此同時也帶來其他新的問題,比如存儲容量有限,尤其是在追求播放器小巧的今天,其容量一般不會很大,如果想升級更大容量的,就只能去購買新的產(chǎn)品了,從而造成資源浪費(fèi);另一方面,一體化的設(shè)計又限制了MP3播放器在其他領(lǐng)域的應(yīng)用,比如LCD液晶顯示升級或更換,與其他系統(tǒng)模塊的整合,因此,MP3播放器的模塊獨(dú)立化也是其發(fā)展的另一方向。低數(shù)據(jù)量和高播放品質(zhì)的優(yōu)點(diǎn)使其成為音樂存儲、數(shù)字廣播、網(wǎng)上音樂傳輸?shù)闹饕绞?。通過運(yùn)用MPEG音頻標(biāo)準(zhǔn)的壓縮技術(shù),我們可以把存儲空間壓縮到原來的1/12而不會降低聲音的音質(zhì)。MPEG1是目前普遍應(yīng)用的音頻壓縮標(biāo)準(zhǔn),其中層III的算法最為復(fù)雜,但壓縮比最大,效果也最好,在低碼率的條件下基本能達(dá)到CD的音質(zhì)效果。同時,為提高本設(shè)計的靈活性,可拓展性,方便后續(xù)升級,引入文件系統(tǒng),而界面系統(tǒng)可依據(jù)需求進(jìn)行配置。 五邑大學(xué)本科畢業(yè)設(shè)計摘 要MP3播放器從上世紀(jì)90年代末開始,發(fā)展至今已經(jīng)是一種相當(dāng)成熟,廣泛應(yīng)用的電子娛樂消費(fèi)產(chǎn)品。目前市面上的MP3播放器種類繁多,功能各異,各種MP3方案層出不窮以適應(yīng)不同的需求,本設(shè)計以51單片機(jī)為主控核心,VS1003為音頻解碼模塊,MicroSD卡為音頻文件的存儲煤質(zhì),加上TFT彩屏友好的人機(jī)交互界面作為該畢業(yè)設(shè)計的MP3播放器方案。關(guān)鍵字: MP3播放器,51單片機(jī),音頻解碼,文件系統(tǒng)Abstract MP3 player since the late 1990 s, the development so far is a quite mature and widely used electronic entertainment consumer products. MP3 player currently on the market a wide variety, different function, all kinds of MP3 solutions emerge in endlessly to adapt to the different requirements, the design of 51 singlechip microputer as the core, control VS1003 audio decoding module, MicroSD card for audio files stored coal quality, coupled with TFT color screen friendly humanputer interaction interface as the graduation design of MP3 players.At the same time, in order to improve the flexibility of the design, can expand sex, convenient upgrade followup, the introduction of the file system, and the interface system can be configured according to the requirements.Key words: MP3 players, 51 singlechip, audio decoding, filesysterm目 錄摘 要 IAbstract II第1章 緒論 1 課題背景 1 設(shè)計意義 1 方案論證 1第2章 系統(tǒng)硬件原理及概述 3 系統(tǒng)硬件總體框架介紹 3 系統(tǒng)硬件各模塊介紹 4 主控芯片STC12C5A60S2處理器簡介 4 VS1003音頻解碼模塊 5 9 LCD12864液晶模塊簡介 12 按鍵控制電路簡介 12 本章小結(jié) 13第3章 系統(tǒng)軟件原理及概述 14 系統(tǒng)軟件總體流程介紹 14 Petit FatFS在STC12C5A60S2實(shí)現(xiàn)移植 15 Petit FatFS 簡介 15 移植流程 16 VS1003核心代碼介紹 17 VS1003相關(guān)細(xì)節(jié)代碼的設(shè)計 17 VS1003初始化介紹 18 VS1003的正弦測試 20 MirocSD卡核心代碼介紹 21 MirocSD相關(guān)細(xì)節(jié)代碼的設(shè)計 21 MirocSD的初始化流程 22 LCD12864核心代碼介紹 25 按鍵控制電路核心代碼簡介 26 本章小結(jié) 27第4章 系統(tǒng)調(diào)試與作品展示 28 軟件調(diào)試篇 28 硬件調(diào)試篇 29 作品展示 30結(jié) 論 31致 謝 32參考文獻(xiàn) 33III第1章 緒論 課題背景MP3是一種音頻壓縮技術(shù),是MPEG1 audio layer 3的簡稱。如果對于一段聲音不進(jìn)行壓縮的話,那么每存儲一秒鐘的立體聲CD音質(zhì)音樂必須用1.4Mbit,這是個十分大的開銷。即使使用1/24的壓縮因子,仍然比單純降低采樣率的音質(zhì)要好。而MP3播放器則是能夠播放MP3格式音頻文件,同時具有存儲,顯示一體這一特定功能的小型電腦。本設(shè)計以單片機(jī)為主控中心,MicroSD卡為音頻數(shù)據(jù)的存儲煤質(zhì),其容量大小可根據(jù)需求進(jìn)行自由更換,同時,以VS1003為音頻解碼模塊,該模塊也可根據(jù)解碼速率及音頻格式進(jìn)行更改,MCU通過對MicroSD卡上的音頻文件進(jìn)行讀取送到解碼模塊進(jìn)行解碼,并通過音頻接口進(jìn)行播放,且將相應(yīng)信息顯示在液晶屏幕實(shí)現(xiàn)人機(jī)交互。尤其是具有硬件SPI。硬件解碼一般是由專門的解碼芯片實(shí)現(xiàn),處理速度快,集成度高(內(nèi)含DAC,功放等所需電路),且除去繁瑣的控制使得處理器可以解脫出來做其他事情,要做的只是將音頻數(shù)據(jù)送入到解碼模塊中即可。這極大地提高了MP3播放器的可拓展性和豐富性,本設(shè)計選擇VS1003作為音頻解碼模塊。(4) LCD界面選擇:良好的用戶體驗(yàn)離不開具有人機(jī)交互的圖形界面,所以本設(shè)計也著重于界面的設(shè)計,從界面的實(shí)現(xiàn)功能要求及成本考慮,本設(shè)計的界面模塊也采用廣泛使用的液晶LCD12864,該模塊基本滿足設(shè)計要求,如果要升級的話也可采用與LCD12864接口兼容的彩屏,不過考慮成本及目前實(shí)現(xiàn)的功能需求來說,暫不需要彩屏,同時,由于LCD12864具有串行傳輸模式和并行傳輸模式可供選擇,增加了靈活性,因此,本設(shè)計最終采用LCD12864作為界面顯示模塊。FatFs 的編寫遵循ANSI C,并且完全與磁盤I/O層分開。它可以被嵌入到低成本的微控制器中,如AVR, 8051, PIC, ARM, Z80, 68K 等等,而不需要做任何修改。可以用在小RAM的單片機(jī)中,RAM可以小于扇區(qū)的RAM(512bytes)中。第2章 系統(tǒng)硬件原理及概述 系統(tǒng)硬件總體框架介紹 TFTLCD STC12C5A60S2 Petit FatFs 歌曲 信息 SD card VS1003 音頻流 硬件SPI serial4*1按鍵 PC機(jī) 圖21 系統(tǒng)硬件框架圖 硬件啟動流程:上電后,主控芯片STC12C5A60S2設(shè)置啟用硬件SPI功能并采用該SPI對存儲設(shè)備MicroSD卡進(jìn)行初始化后檢索根目錄下的MP3格式音頻文件名,然后按照檢索的順序依次顯示在LCD上供用戶瀏覽,用戶可根據(jù)4個獨(dú)立的按鍵進(jìn)行選擇操作,4個按鍵中分別為 prev ,next ,play , quit ,由于按鍵數(shù)量不多但要完成的