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

相關(guān)專題: 芯片

摘要:采用以ST C89C58RD+ 單片機(jī)為控制核心設(shè)計MP3 播放器, 該系統(tǒng)通過單片機(jī)控制USB 接口芯片CH375 外接的U 盤, 讀取數(shù)據(jù)并進(jìn)行緩沖, 傳輸給專用MP3 音頻解碼芯片VS1003, 實(shí)現(xiàn)特定格式的音頻數(shù)據(jù)解碼, 并通過耳機(jī)或有源音響輸出。經(jīng)測試, 該M P3 播放器可實(shí)現(xiàn)音頻播放功能, 該播放器具有播放聲音流暢, 操作簡單, 功耗低等特點(diǎn)。

0 引 言

隨著電子技術(shù)的發(fā)展, MP3 播放器是目前市場上流行的消費(fèi)類數(shù)碼產(chǎn)品之一, 具有大容量、高音質(zhì)、小巧便攜等特點(diǎn)而倍受廣大消費(fèi)者的青睞 。本文采用ETC 公司的微控制器ST C89C58RD+ , 結(jié)合解碼芯片VS1003、USB 接口芯片CH375、LCD 等外圍設(shè)備設(shè)計并實(shí)現(xiàn)了MP3 播放器。主要功能有: 播放VS1003 支持的所有音頻文件, 包括MP3, WMA, WAV 文件[ 2] ,且音質(zhì)非常好, 具有按鍵控制播放上一首/ 下一首、音量增減等, 可通過LCD 顯示歌曲名字和播放狀態(tài)信息等功能。

1 硬件系統(tǒng)設(shè)計

系統(tǒng)工作原理框圖如圖1 所示。系統(tǒng)啟動后, 單片機(jī)通過USB 接口芯片CH375, 從U 盤中獲取MP3 格式文件的數(shù)據(jù), 并存入片內(nèi)RAM 進(jìn)行緩沖, 然后單片機(jī)定時將數(shù)據(jù)從緩沖區(qū)送到MP3 音頻解碼芯片VS1003, 實(shí)現(xiàn)解碼并輸出音頻信號到耳機(jī)或者有源音響輸出。用戶可以通過鍵盤實(shí)現(xiàn) “啟動”、“上一曲”、“下一曲”、“音量控制”及 停止!等功能, 并將播放狀態(tài)信息通過LCD 顯示。系統(tǒng)框圖如圖1 所示。

1. 1 單片機(jī)讀取MP3 數(shù)據(jù)模塊

數(shù)據(jù)讀取模塊包括單片機(jī)控制器, U SB 串行數(shù)據(jù)轉(zhuǎn)換成8 位并行數(shù)據(jù)CH375 芯片和MP3 格式數(shù)據(jù)存儲U 盤3 部分。

1. 1. 1 單片機(jī)控制器

采用宏晶公司的ST C89C58RD+ 單片機(jī), 該單片機(jī)最高可工作于33 MHz 時鐘, 具有32 KB 的FLASH, 1 KB 的內(nèi)部RAM, 引腳與指令系統(tǒng)均與51 單片機(jī)兼容 。本設(shè)計中, 單片機(jī)工作在30 MHz的系統(tǒng)時鐘下, 能滿足系統(tǒng)對數(shù)據(jù)帶寬的要求。

1. 1. 2 USB 接口芯片CH375

CH375 是一個USB 總線通用接口電路, 支持HOST 主機(jī)方式和SLAVE 設(shè)備方式。CH375 內(nèi)部集成了PLL 倍頻器、主從U SB 接口SIE、數(shù)據(jù)緩沖區(qū)、被動并行接口、異步串型接口、命令解釋器、控制傳輸?shù)膮f(xié)議處理器、通用的固件程序等 。在本地端, CH375 具有8 位數(shù)據(jù)總線和讀、寫、片選控制線及中斷輸出, 可以方便地掛接到單片機(jī)、DSP 等控制器的系統(tǒng)總線上, 并內(nèi)置海量存儲固件 。CH375 的USB 主機(jī)方式支持各種常用的USB 全速設(shè)備, 外部單片機(jī)、DSP、MCU 可以通過CH375 按照相應(yīng)的USB 協(xié)議與USB 設(shè)備通信, 支持常用的12 Mb/ s 全速U SB 設(shè)備。

1. 1. 3 工作原理

利用單片機(jī)實(shí)現(xiàn)將U 盤中的音頻數(shù)據(jù)經(jīng)CH375的USB 轉(zhuǎn)串行接口傳送至單片機(jī)內(nèi)部RAM 緩沖, 以等待解碼。其中CH375 是一款USB 總線的通用接口芯片, 可以方便地掛接到單片機(jī)的控制總線上, 同時CH375 的U SB 主機(jī)方式支持常用的USB 全速設(shè)備,外部單片機(jī)可以通過CH375 按照相應(yīng)的U SB 通信協(xié)議與U SB 設(shè)備通信。

由于CH375 內(nèi)置了USB 通信協(xié)議, 省去了對USB 通信協(xié)議的了解, 單片機(jī)可以直接調(diào)用A PI 庫讀寫U 盤中的文件數(shù)據(jù), 硬件上只需在51 單片機(jī)系統(tǒng)中增加一個CH375 芯片, 綜合成本較低。CH375 支持全速的U SB??HOST 主機(jī)接口, 外圍元器件只需要少量晶體和電容, 便可支持5 V 電源電壓和3. 3 V 電源電壓,CH375 芯片還支持低功耗模式, 正常工作時, 需要外部為它提供12 MHz 的時鐘信號。電路原理如圖2 所示。

1. 2 音頻解碼模塊

音頻解碼模塊包括2 大部分單片機(jī)控制器和專用MP3 音頻解碼芯片VS1003。

1. 2. 1 音頻解碼芯片VS1003

VS1003 是一個單片MP3/ WMA/ MIDI 音頻解碼器和ADPCM 編程器。它包含一個高性能、自主產(chǎn)權(quán)的低功耗DSP 處理器核VS_DSP, 并提供5KB 的指令RAM 和0. 5 KB 的數(shù)據(jù)RAM。產(chǎn)生MIDI/ SP??MIDI文件, 內(nèi)含高性能片上立體聲數(shù)/ 模轉(zhuǎn)換器, 兩聲道, 無相位差, 在播放音頻文件時不需要外加驅(qū)動電路,VS1003 內(nèi)部自帶耳機(jī)功放 , 只要調(diào)試好電路系統(tǒng),接入耳機(jī)就可以聽到美妙的音樂。同時, VS1003 為用戶提供5. 5 KB 的片上RAM, 并支持SPI 串行通信的控制數(shù)據(jù)接口。

1. 2. 2 工作原理

系統(tǒng)上電啟動后, 由單片機(jī)控制將存儲于U 盤中歌曲的MP3 數(shù)據(jù)格式流信息通過CH375USB 接口芯片送入到V S1003 芯片中, 通過VS1003 芯片解碼及其內(nèi)含高質(zhì)量的立體聲DAC 和耳機(jī)驅(qū)動電路, 實(shí)現(xiàn)MP3歌曲的播放, 在按鍵的控制下, 可實(shí)現(xiàn)對歌曲的選擇、音量增減等功能。VS1003 的所有數(shù)據(jù)和控制命令均通過SPI 總線接口實(shí)現(xiàn), 由于設(shè)計中所采用的單片機(jī)沒有SPI 接口, 因此, 在設(shè)計中采用單片機(jī)的3 個I/ O 口來模擬SPI 時序, 以達(dá)到實(shí)現(xiàn)SPI 通信功能。電路如圖3所示。

1. 3 鍵盤及顯示模塊

鍵盤采用的是獨(dú)立按鍵, 與單片機(jī)P30~ P34 相連接, 實(shí)現(xiàn) 開始!、下一曲!、上一曲!、音量+ ! 和音量- !等5 個功能。播放的狀態(tài)由Nokia5110 液晶顯示, 該液晶為84 x 48 點(diǎn)陣的LCD, 可以顯示4 行漢字, 并支持串行通信協(xié)議, 傳輸速率高達(dá)4 Mb/ s, 可全速寫入顯示數(shù)據(jù), 方便地與單片機(jī)進(jìn)行通信。該液晶外部信號線僅有9 條, 節(jié)約本來就緊張的I/ O 口, 其串行通信模式下的控制時序如圖4 所示。

1. 4 電源模塊

系統(tǒng)采用的是5 V 直流電源供電, 并通過5 V 轉(zhuǎn)3. 3 V的SPX1117??3. 3 V 芯片給單片機(jī), VS1003 解碼器和U SB 專用芯片CH375 模塊供電, 其電源電路原理如圖5 所示。

2 軟件系統(tǒng)設(shè)計

本系統(tǒng)單片機(jī)的軟件設(shè)計采用C51 語言編寫, 源程序共分3 個部分, 即: 單片機(jī)驅(qū)動CH375 程序, 單片機(jī)控制VS1003 實(shí)現(xiàn)音頻解碼程序, 按鍵和顯示驅(qū)動程序。在編寫CH375 模塊部分的程序時, 用到了從南京沁恒公司官方網(wǎng)站下載的CH375 的API 函數(shù)庫 “CH375HF4.LIB”文件, 簡化了程序設(shè)計。因?yàn)閱纹瑱C(jī)的硬件資源十分有限, 在硬件調(diào)試過程中, 出現(xiàn)在傳送頻率較高的歌曲時, 由于采樣頻率低, 帶寬不夠, 而造成聲音失真。所以在系統(tǒng)的開發(fā)過程中, 應(yīng)優(yōu)化程序, 提高運(yùn)行速度, 保證播放歌曲的流暢, 其軟件流程如圖6 所示。

3 結(jié) 語

設(shè)計的MP3 播放器采用51 單片機(jī)加VS1003 解碼, 并通過CH375USB 專用芯片進(jìn)行數(shù)據(jù)讀取, 這種組合方式相比于采用AVR 或者M(jìn)SP430 系列的高端單片機(jī), 達(dá)到的播放效果也毫不遜色。系統(tǒng)的整個設(shè)計難點(diǎn)在于單片機(jī)如何高效的從U 盤中讀取數(shù)據(jù), 并以一定的時序?qū)⒕彌_的數(shù)據(jù)傳輸給VS1003, 實(shí)現(xiàn)解碼。在此采用的方法一是提高系統(tǒng)的時鐘; 二是通過修改軟件, 精簡程序, 來加快了系統(tǒng)的傳輸速率, 使播放音樂更加流暢。

作者:袁衛(wèi) 黨紀(jì)源 來源:《現(xiàn)代電子技術(shù)》

我推薦大家讀

輕松參與

VS

表達(dá)立場

這是垃圾文章


微信掃描分享本文到朋友圈
掃碼關(guān)注5G通信官方公眾號,免費(fèi)領(lǐng)取以下5G精品資料
  • 1、回復(fù)“YD5GAI”免費(fèi)領(lǐng)取《中國移動:5G網(wǎng)絡(luò)AI應(yīng)用典型場景技術(shù)解決方案白皮書
  • 2、回復(fù)“5G6G”免費(fèi)領(lǐng)取《5G_6G毫米波測試技術(shù)白皮書-2022_03-21
  • 3、回復(fù)“YD6G”免費(fèi)領(lǐng)取《中國移動:6G至簡無線接入網(wǎng)白皮書
  • 4、回復(fù)“LTBPS”免費(fèi)領(lǐng)取《《中國聯(lián)通5G終端白皮書》
  • 5、回復(fù)“ZGDX”免費(fèi)領(lǐng)取《中國電信5GNTN技術(shù)白皮書
  • 6、回復(fù)“TXSB”免費(fèi)領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復(fù)“YDSL”免費(fèi)領(lǐng)取《中國移動算力并網(wǎng)白皮書
  • 8、回復(fù)“5GX3”免費(fèi)領(lǐng)取《R1623501-g605G的系統(tǒng)架構(gòu)1
  • 本周熱點(diǎn)本月熱點(diǎn)

     

      最熱通信招聘

    業(yè)界最新資訊


      最新招聘信息