0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于C89C58RD+單片機(jī)與VS1003實(shí)現(xiàn)MP3播放器設(shè)計(jì)

電子設(shè)計(jì) ? 來源:郭婷 ? 作者:電子設(shè)計(jì) ? 2018-12-24 09:03 ? 次閱讀

引 言

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

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

系統(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 所示。

基于C89C58RD+單片機(jī)與VS1003實(shí)現(xiàn)MP3播放器設(shè)計(jì)

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ì)中, 單片機(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 所示。

基于C89C58RD+單片機(jī)與VS1003實(shí)現(xiàn)MP3播放器設(shè)計(jì)

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ì)中所采用的單片機(jī)沒有SPI 接口, 因此, 在設(shè)計(jì)中采用單片機(jī)的3 個I/ O 口來模擬SPI 時序, 以達(dá)到實(shí)現(xiàn)SPI 通信功能。電路如圖3所示。

基于C89C58RD+單片機(jī)與VS1003實(shí)現(xiàn)MP3播放器設(shè)計(jì)

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 所示。

基于C89C58RD+單片機(jī)與VS1003實(shí)現(xiàn)MP3播放器設(shè)計(jì)

1. 4 電源模塊

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

基于C89C58RD+單片機(jī)與VS1003實(shí)現(xiàn)MP3播放器設(shè)計(jì)

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

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

基于C89C58RD+單片機(jī)與VS1003實(shí)現(xiàn)MP3播放器設(shè)計(jì)

3 結(jié) 語

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

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 微控制器
    +關(guān)注

    關(guān)注

    48

    文章

    7564

    瀏覽量

    151515
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6037

    文章

    44562

    瀏覽量

    635911
  • 播放器
    +關(guān)注

    關(guān)注

    5

    文章

    399

    瀏覽量

    37433
收藏 人收藏

    評論

    相關(guān)推薦

    基于VS1003解碼MP3播放器設(shè)計(jì)

    單片機(jī)從SD卡里讀取的數(shù)字MP3音頻數(shù)據(jù)流進(jìn)行解析,并轉(zhuǎn)換成模擬信號進(jìn)行輸出。圖4是該MP3播放器的音頻解碼模塊電路原理圖采用VS1003
    發(fā)表于 05-08 13:20

    音頻編解碼芯片VS1003MP3語音方案)

    較高的。所以商業(yè)或工業(yè)領(lǐng)域所需要的MP3播放器,需要支持自動從U盤或SD卡等移動存儲設(shè)備中轉(zhuǎn)移數(shù)據(jù)的能力。為了滿足這樣的需求,我們提出了一種嵌入式語音播放的解決方案----單片機(jī) +
    發(fā)表于 03-27 09:28

    基于SLH89F5162單片機(jī)MP3音樂播放器設(shè)計(jì)

    之前用51單片機(jī)做過硬件MP3解碼,看到SLH89F5162很強(qiáng)大,資源比較豐富,想用SLH89F5162做一個MP3!采 用12864作為
    發(fā)表于 09-27 09:33

    VS1003制作的音樂播放器

    。硬件解碼的種類很多,像在市面上賣的MP3里面使用的芯片(ES9018K2M)都是專門用來制作MP3播放器的。他們的價格相對較低。接下來我要介紹V
    發(fā)表于 02-26 10:33

    【振南ZN-X開發(fā)板(51版)】讀取FlashROM中的MP3文件,送入VS1003解碼播放 [簡易FlashROM MP3播放器]

    ,使得我們沒有真正領(lǐng)略到VS1003音質(zhì)的魅力。(只是一個完全單純的硬件和電路測試而已!)“為什么不找一段MP3數(shù)據(jù)寫進(jìn)去,真正解碼播放一下呢?”答:“單片機(jī)沒有那么多的存儲空間去存儲
    發(fā)表于 06-17 14:27

    有關(guān)STC89+VS1003來制作MP3播放器

    我用了STC89C52+VS1003+CH376S來搭建,CH376與單片機(jī)通信是沒問題的,VS1003的正弦音測試也是沒問題的,但是在最后進(jìn)入播放模式的時候,出來的聲音跟卡帶了一樣,
    發(fā)表于 12-28 16:19

    【疑問】利用VS1003B、CH375B模塊制作基于51單片機(jī)MP3

    最近在用51單片機(jī)制作一個MP3,功能是從U盤讀取文件數(shù)據(jù),將數(shù)據(jù)送給VS1003模塊進(jìn)行音頻解碼,最后DA轉(zhuǎn)化由耳機(jī)播放。目前我的進(jìn)展是:1.利用CH375B芯片的開源文件操作子函數(shù)
    發(fā)表于 11-07 23:09

    【uFun試用申請】基于ufun與FATFS的MP3播放器設(shè)計(jì)

    項(xiàng)目名稱:基于ufun與FATFS的MP3播放器設(shè)計(jì)試用計(jì)劃:申請理由: 本人自大一下半年后一直在實(shí)驗(yàn)室中學(xué)習(xí)51、stm32單片機(jī)的學(xué)習(xí),參加過2017年電賽獲得省二、參加過第十三屆恩智浦杯智能車
    發(fā)表于 03-22 18:23

    怎樣去設(shè)計(jì)一個基于VS1003語音解碼芯片和CH375優(yōu)盤模塊的mp3播放器

    怎樣去設(shè)計(jì)一個基于VS1003語音解碼芯片和CH375優(yōu)盤模塊的mp3播放器呢?
    發(fā)表于 12-14 07:29

    基于單片機(jī)AT89C51的MP3播放系統(tǒng)的設(shè)計(jì)方案

    提出一種基于單片機(jī)AT89C51SND1CMP3播放系統(tǒng)的設(shè)計(jì)方案。單片機(jī)集成了專用的解碼,
    發(fā)表于 11-23 11:44 ?489次下載

    VS1003/VS1003B MP3原理圖 應(yīng)用電路圖

    VS1003/VS1003B MP3原理圖 應(yīng)用電路圖 VS1003/VS1003B pdf datasheet
    發(fā)表于 02-11 08:34 ?6339次閱讀
    <b class='flag-5'>VS1003</b>/<b class='flag-5'>VS1003</b>B <b class='flag-5'>MP3</b>原理圖 應(yīng)用電路圖

    基于AT89C51SND1Cmp3播放器的設(shè)計(jì)

    基于AT89C51SND1Cmp3播放器的設(shè)計(jì)。
    發(fā)表于 01-22 14:24 ?104次下載

    基于芯片VS1003MP3電路原理圖

    基于芯片VS1003MP3電路原理圖
    發(fā)表于 09-19 08:48 ?32次下載
    基于芯片<b class='flag-5'>VS1003</b>的<b class='flag-5'>MP3</b>電路原理圖

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

    本文首先分析了便攜式MP3播放器的工作原理及其系統(tǒng)構(gòu)成,接著介紹了一種基于51單片機(jī)MP3播放器設(shè)計(jì)方案。采用 AT
    的頭像 發(fā)表于 05-26 09:02 ?6691次閱讀
    基于AT<b class='flag-5'>89C51SND1C</b><b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>MP3</b><b class='flag-5'>播放器</b>的設(shè)計(jì)方案

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

    電子發(fā)燒友網(wǎng)站提供《基于STC89C58單片機(jī)MP3播放器設(shè)計(jì).pdf》資料免費(fèi)下載
    發(fā)表于 10-10 10:56 ?5次下載
    基于STC<b class='flag-5'>89C58</b><b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>MP3</b><b class='flag-5'>播放器</b>設(shè)計(jì)