一種以優(yōu)盤為存儲介質(zhì)的MP3播放器設(shè)計(jì)
引言
隨著mp3播放器作為消費(fèi)類產(chǎn)品的普及,MP3的設(shè)計(jì)與生產(chǎn)也越來越多。在當(dāng)前的MP3播放器中,一般有以下幾種設(shè)計(jì)方案:
?、?MCU內(nèi)置硬解碼模塊。典型的芯片有Atmel公司的AT89C51SNDI等芯片。
?、?外置獨(dú)立的MP3硬解碼芯片。此種方案的好處是可以使用眾多的MCU,可根據(jù)需要任意選擇。硬解碼芯片典型的有VS1011B、STA013等芯片。
?、?使用功能強(qiáng)大的MCU進(jìn)行軟解碼,如使用DSP或是高性能的ARM。此種方案較為靈活,通過軟件升級即可實(shí)現(xiàn)產(chǎn)品的升級。
MP3播放器的存儲介質(zhì)一般采用Flash存儲芯片。隨著USB技術(shù)和閃存技術(shù)的發(fā)展,優(yōu)盤已經(jīng)成為一種大眾化的電子產(chǎn)品被廣泛使用,但優(yōu)盤一般只是作為PC的移動存儲器。本文研究的一種方案是在上述MP3設(shè)計(jì)方案②的基礎(chǔ)上,外擴(kuò)優(yōu)盤讀寫電路,使存儲介質(zhì)使用普通的優(yōu)盤。這樣可以解決普遍使用的優(yōu)盤只能作為PC外設(shè)存儲數(shù)據(jù)用的問題,使U盤的使用范圍擴(kuò)展到MP3上。更大的意義還在于,本文提出了一種在以嵌入式系統(tǒng)、MCU為核心的消費(fèi)類電子產(chǎn)品或工業(yè)產(chǎn)品中,將優(yōu)盤作為數(shù)
據(jù)存儲器使用的設(shè)計(jì)方案,為在微計(jì)算機(jī)測控系統(tǒng)、儀器儀表、無紙化數(shù)據(jù)記錄儀、數(shù)碼相機(jī)等產(chǎn)品中添加優(yōu)盤外設(shè)功能提供有益的參考。
1 硬件設(shè)計(jì)
S3C44B0X是Samsung公司開發(fā)生產(chǎn)的為嵌入式設(shè)備提供的一個(gè)低成本、高性能的ARM7TMDI核處理器,其最高運(yùn)行頻率可達(dá)66 MHz。SL811HS是Cypress公司的一款遵從USB1.1協(xié)議的嵌入式Host/Slave USB芯片;可以支持低速和高速模式,能自動偵測低速模式1. 5 Mbps設(shè)備和高速模式12 Mbps全速設(shè)備。由于具有8位數(shù)據(jù)總線的支持,使該芯片可以較為簡單地與微控制器相連,SL811HS芯片與S3C44B0X的接口較為簡單。本系統(tǒng)中ARM讀/寫優(yōu)盤原理框圖如圖1所示。
SL811HS的控制命令和數(shù)據(jù)均通過D0~D7傳輸,A0為數(shù)據(jù)或地址選擇線。當(dāng)A0置為低電平時(shí),D0~D7上傳輸?shù)氖荢L811HS片內(nèi)寄存器的地址;反之當(dāng)A0置為高電平時(shí)傳輸?shù)膭t為數(shù)據(jù)。nWR、nRD、nCS、nRST0分別為寫控制線、讀控制線、片選線和復(fù)位線,S3C44B0X通過這幾根控制線完成對SL811HS片內(nèi)緩沖區(qū)的讀寫、片選和復(fù)位等操作。INT是SL811HS的中斷請求信號線。當(dāng)SL811HS檢測到優(yōu)盤插入、拔出時(shí),通過將INT線拉高通知S3C44B0X。S3C44B0X可以通過查詢SL811HS片內(nèi)狀態(tài)寄存器來得知是優(yōu)盤插入或是拔出。對狀態(tài)寄存器進(jìn)行寫操作可以清除中斷,但需要注意的是ARM的結(jié)構(gòu)特性。ARM內(nèi)部通常是Little Endian方式存儲和使用4字節(jié)對齊方式[1],并且當(dāng)采用16位數(shù)據(jù)總線時(shí),地址線ADDR0是無效的[2]。在本系統(tǒng)中,SL811HS芯片A0端是與ADDR1相連接的。
VS1011B是一款單芯片的MP3解碼芯片,在國際MP3業(yè)余愛好者中影響較大,集成解碼、A/D轉(zhuǎn)換、音頻放大等功能。VS1011B與S3C44B0X接口為SPI接口,其連接電路原理框圖如圖2所示。
VS1011B的控制與數(shù)據(jù)傳輸是通過SPI接口完成的,DREQ、xDCS、xCS、nRST1分別為數(shù)據(jù)請求端口、數(shù)字片選信號線、片選線、復(fù)位線。在VS1001B的新模式下,SDI(Serial Data InteRFace)數(shù)據(jù)和SCI(Serial Command Interface)數(shù)據(jù)傳輸可以共享ARM的一個(gè)SPI接口;而在兼容模式下,SDI數(shù)據(jù)傳輸要用DCLK、SDATA串行接口,SCI數(shù)據(jù)傳輸用SPI接口。為了簡化電路,此處選用了新模式。
評論