當(dāng)前位置:首頁 > 電源 > 數(shù)字電源
[導(dǎo)讀]隨著電子技術(shù)的發(fā)展,MP3播放器向大容量、高音質(zhì)、小巧便攜不斷發(fā)展。雖然播放器與存儲器的一體化設(shè)計(jì)使MP3播放器便于攜帶,但與此同時(shí)他也帶來了很多新的問題,比如存儲容量固定,如果想裝下更多的歌曲只能去購買新

隨著電子技術(shù)的發(fā)展,MP3播放器向大容量、高音質(zhì)、小巧便攜不斷發(fā)展。雖然播放器與存儲器的一體化設(shè)計(jì)使MP3播放器便于攜帶,但與此同時(shí)他也帶來了很多新的問題,比如存儲容量固定,如果想裝下更多的歌曲只能去購買新的產(chǎn)品,造成了巨大的浪費(fèi);另一方面,一體化又限制了MP3播放器在其他領(lǐng)域的應(yīng)用,比如車載MP3等不方便移動的播放器。于是將存儲器與播放器分離成為MP3的另一發(fā)展方向,同時(shí)HOSTUSB的開發(fā)也為實(shí)時(shí)數(shù)據(jù)采集的移動存儲提供了價(jià)格低廉的解決方案。本文將從軟硬件方面詳細(xì)介紹如何用AVR控制HOSTUSB讀取U盤中的文件并將其解碼播放。

  l 方案設(shè)計(jì)

  1.1 系統(tǒng)功能簡介

  本設(shè)計(jì)主要完成U盤的識別和數(shù)據(jù)的讀取,并將U盤中讀取的MP3文件解碼播放出流暢的音樂,完成.MP3播放器的存儲與解碼的分離。系統(tǒng)功能主要包括讀取U盤數(shù)據(jù)和MP3解碼播放2部分。實(shí)現(xiàn)設(shè)計(jì)功能需要USB接口芯片、MP3解碼芯片、主控制器和其他外圍電路。

  1.2主要芯片的選擇

  通過比較本文選擇南京沁恒電子生產(chǎn)的一款USB通用接口芯片CH375。CH375芯片支持HOST主機(jī)方式和DEVICE設(shè)備方式,內(nèi)部集成了PLL倍頻器、主從USB接口、數(shù)據(jù)緩沖區(qū)、被動并行接口、異步串行接口、命令解釋器、控制傳輸?shù)膮f(xié)議處理器、通用的固件程序等。

  音頻解碼芯片選擇芬蘭VLSI公司生產(chǎn)的VSl003。VSl003具有MP3/wMA/MIDI解碼和ADPCM編碼功能,他內(nèi)部包含一個高性能、低功耗的DSP處理核(VSD一SP),一個工作內(nèi)存,一片可供用戶程序使用的5.5 kBRAM,一個串行SPI總線接口,一個高質(zhì)量的采樣頻率可調(diào)的過采樣DAC以及一個16位的采樣ADC。

  采用高性能低功耗的8位AVR閃存微處理器作為系統(tǒng)主控制器,ATmega64內(nèi)部具有豐富的資源,64 kB的系統(tǒng)內(nèi)可編程FLASH,2 kB E2PROM,4 kB SRAM,53個通用I/O口線,32個通用工作寄存器,RSIC設(shè)計(jì)的單指令周期使單片機(jī)具有高速處理能力,能保證MP3文件的順暢播放。

  2硬件接口

  2.1 USB接口芯片CH375與MCU的連接

  CH375可以方便地掛接到MCU系統(tǒng)總線上,MCU通過CH375按照相應(yīng)的USB協(xié)議可以很方便地與其他USB設(shè)備進(jìn)行通信。本設(shè)計(jì)中CH375工作在USBHOST模式下,將CH375的TXD端接地,RXD端懸空采取并行傳輸?shù)姆绞剑瑢?位并行數(shù)據(jù)線D0~D7與AT-mega64L的PD口相連實(shí)現(xiàn)數(shù)據(jù)與命令的并行傳輸,RD,WR,CS,INT和A0五根控制線分別連接至ATmega64L的PC3~.PC7引腳,接口的系統(tǒng)框圖如圖1所示。RD,WR和CS分別為讀選通、寫選通和片選,低電平有效;INT中斷請求為低電平有效;地址輸入線AO為高電平時(shí)選擇命令端口,可以向CH375寫人命令;當(dāng)AO引腳為低電平時(shí)選擇數(shù)據(jù)端口,可以向CH375讀寫數(shù)據(jù)。

當(dāng)CH375工作在主機(jī)方式時(shí)MCU通過RD,wR,片選CS、中斷INT和地址線AO的綜合控制,完成與CFl375的通訊,通過USB接口實(shí)現(xiàn)從U盤讀寫數(shù)據(jù)的功能。INT引腳和MCU的外部中斷輸入引腳相連,當(dāng)有U盤插入時(shí)1NT變?yōu)榈碗娖接|發(fā)外部中斷,當(dāng)CS,RD和AO都為低電平時(shí),CH375中的數(shù)據(jù)可以通過D7~DO輸出;當(dāng)CS,wR和AO都為低電平時(shí),D7~DO上的數(shù)據(jù)被寫入CH375芯片中;當(dāng)CS和wR都為低電平AO為高電平時(shí),D7一DO中的數(shù)據(jù)可作為命令碼寫入CH375芯片中。

  2.2 MP3解碼芯片與MCU的連接

  VSl003通過同步串行總線SPI與ATmega64L進(jìn)行命令和數(shù)據(jù)的傳輸。由于ATmega64L內(nèi)部集成有SPI總線模塊,只要正確寫SPI相關(guān)寄存器就能輕松控制SPL這種硬件SPI總線減小了軟件設(shè)計(jì)的困難。VSl003的SPI接口具有2種工作模式:新模式和兼容模式。設(shè)置寄存器SM_SDI。NEW為1使'VSl003處于新模式,此時(shí)設(shè)置SMSDISFIARED為O,控制信號和數(shù)據(jù)信號的傳送將分別采用xCS和xDCS作為同步信號。

  系統(tǒng)啟動后,由MCU控制將存儲于U盤中歌曲的碼流信息送入到VSl003芯片中,通過VSl003芯片解碼以及其內(nèi)含的高質(zhì)量的立體聲DAC和耳機(jī)驅(qū)動電路,實(shí)現(xiàn)MP3歌曲的播放功能,在按鍵的控制下,實(shí)現(xiàn)對歌曲播放模式以及歌曲選擇等功能。

  VSl003的所有數(shù)據(jù)和控制命令均通過SPI總線接口實(shí)現(xiàn),因此與MCU接口實(shí)現(xiàn)比較簡單,包括3條SPI數(shù)據(jù)線和4條與PB4~PB7引腳相連的控制線,接口框圖如圖2所示。

  3軟件編程

  3.1 U盤文件管理系統(tǒng)

  U盤采用的文件系統(tǒng)一般都為FAT文件系統(tǒng)他將存儲空間分為5部分:主引導(dǎo)扇區(qū)(MBR)、DOS引導(dǎo)區(qū)(DBR)、文件分配表(FAT)、文件目錄表(FDT)和數(shù)據(jù)。Ctt375提供了U盤文件級子程序庫,單片機(jī)可以直接調(diào)用子程序讀寫U盤中的文件數(shù)據(jù)。

3.2讀取U盤數(shù)據(jù)[!--empirenews.page--]

  應(yīng)用中的單片機(jī)讀寫U盤的程序可分成2大部分:應(yīng)用程序和固件程序。應(yīng)用程序完成系統(tǒng)的數(shù)據(jù)處理任務(wù)、外圍控制等功能;固件程序處理底層的USB通訊協(xié)議、文件系統(tǒng),數(shù)據(jù)在USB總線上的可靠傳輸和在U盤上的存取操作。CH375內(nèi)置了處理海量存儲設(shè)備的專用通信協(xié)議的固件,所以嵌入式系統(tǒng)的單片機(jī)可以通過CH375將U盤作為可移動的大容量存儲器。數(shù)據(jù)讀寫只需要幾條指令,而不需要詳細(xì)了解USB通信協(xié)議。

  U盤文件的讀寫方式采取扇區(qū)模式以扇區(qū)(每個扇區(qū)通常是512字節(jié))為基本單位進(jìn)行讀寫操作,從而將USB存儲設(shè)備簡化為一種外部數(shù)據(jù)存儲器,單片機(jī)可以自由讀寫USB存儲設(shè)備中的數(shù)據(jù),也可以自由定義其數(shù)據(jù)結(jié)構(gòu)。本文中單片機(jī)與U盤的通訊采用查詢中斷響應(yīng)的方式進(jìn)行,具體流程圖如圖3所示。

 使用AVR編程工具軟件ICCAVR編寫系統(tǒng)C程序,CH375提供了已封裝好的庫函數(shù)CH375HF6.LIB,包含大量宏定義方便了編程。

  下面列舉一些CH375關(guān)鍵操作函數(shù):CH375的初始化函數(shù)CH375Liblnit();查詢U盤是否準(zhǔn)備就緒函數(shù)CH375DiskReady();查詢磁盤信息函數(shù)CH375DiskQuery();打開指定名稱的文件或者目錄CH375FileOpen();CH375FileCreate()為新建文件并打開,如果文件已經(jīng)存在則先刪除后再新建;CH375FileClose()為關(guān)閉當(dāng)前文件;CH375FileReadX()以扇區(qū)為單位從當(dāng)前文件讀取數(shù)據(jù),CH375FileWriteX()以扇區(qū)為單位向當(dāng)前文件寫入數(shù)據(jù)。

  3.3 VSl003控制協(xié)議

  VSl003通過一個工作于從模式的SPI串行總線與主機(jī)進(jìn)行數(shù)據(jù)和控制信息的交流,控制信號和數(shù)據(jù)信號的傳送分別采用xCS和xDCS作為同步信號。數(shù)據(jù)信號xDCS為低時(shí)通過串行接口傳送音頻數(shù)據(jù),當(dāng)控制信號xCS為低時(shí)通過串行接口傳送控制命令,控制命令總是為16位,通過讀/寫不同的寄存器來實(shí)現(xiàn)對VSl003的控制。作為從機(jī)工作模式,VSl003通過一個信號線DREQ指示是否允許主機(jī)傳送數(shù)據(jù),當(dāng)DREQ為高時(shí),VSl003至少可以接受32 kB的數(shù)據(jù)或者控制命令。

  下面介紹新模式下且SM-SDISHARE設(shè)置為O時(shí)VSl003通信協(xié)議的實(shí)現(xiàn)。圖4描述了傳送數(shù)據(jù)的工作時(shí)序,他以xDCS為同步信號,隨著時(shí)鐘信號的變化,數(shù)據(jù)根據(jù)控制命令的設(shè)置依次從高位或低位送出??刂泼顓f(xié)議包括1個控制指令字節(jié)、1個地址字節(jié)和1個16位數(shù)據(jù)字,每次讀寫控制可以操作1個寄存器。讀命令和寫命令分別為Ox03和Ox02,這2種控制命令的工作時(shí)序分別如圖5,圖6所示。

3.4播放MP3文件

  首先完成對VSl003和SPI總線的初始化,然后等待系統(tǒng)從U盤存儲介質(zhì)中打開MP3文件,從中讀取的一個扇區(qū)的數(shù)據(jù)放入Atmeag64L的512 B緩沖區(qū)中,然后將數(shù)據(jù)發(fā)往VSl003,解碼芯片就會自動播放出流暢的音樂。由于VSl003有32 B的數(shù)據(jù)緩存區(qū),一次可向其發(fā)32 B數(shù)據(jù)然后檢查DREQ引腳,當(dāng)DREQ為高時(shí)送下一個32 B數(shù)據(jù),發(fā)完一個扇區(qū)的內(nèi)容后再繼續(xù)從U盤中讀取下一個扇區(qū)內(nèi)容,重復(fù)操作直到文件播放完為止。

  4 結(jié) 語

  將系統(tǒng)C程序通過ICCAVR編譯成功后生成HEX可執(zhí)行文件,再在AVRStudio編譯器中用JTAG接口將編譯好的可執(zhí)行文件下載到目標(biāo)板中,將U盤插入系統(tǒng)就會播放U盤中的MP3音樂,音質(zhì)效果和播放的連貫性都很不錯。此方案很好地實(shí)現(xiàn)了對U盤的識別和讀取,突破了MP3播放器中解碼器與存儲器一體化的限制,只需使用更大容量的U盤就可以在原有硬件基礎(chǔ)上增加存儲容量,在音響和汽車電子及數(shù)據(jù)采集存儲方面具有良好的應(yīng)用前景。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉