引言
隨著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。此種方案較為靈活,通過軟件升級(jí)即可實(shí)現(xiàn)產(chǎn)品的升級(jí)。
MP3播放器的存儲(chǔ)介質(zhì)一般采用Flash存儲(chǔ)芯片。隨著USB技術(shù)和閃存技術(shù)的發(fā)展,優(yōu)盤已經(jīng)成為一種大眾化的電子產(chǎn)品被廣泛使用,但優(yōu)盤一般只是作為PC的移動(dòng)存儲(chǔ)器。本文研究的一種方案是在上述MP3設(shè)計(jì)方案②的基礎(chǔ)上,外擴(kuò)優(yōu)盤讀寫電路,使存儲(chǔ)介質(zhì)使用普通的優(yōu)盤。這樣可以解決普遍使用的優(yōu)盤只能作為PC外設(shè)存儲(chǔ)數(shù)據(jù)用的問題,使U盤的使用范圍擴(kuò)展到MP3上。更大的意義還在于,本文提出了一種在以嵌入式系統(tǒng)、MCU為核心的消費(fèi)類電子產(chǎn)品或工業(yè)產(chǎn)品中,將優(yōu)盤作為數(shù)據(jù)存儲(chǔ)器使用的設(shè)計(jì)方案,為在微計(jì)算機(jī)測(cè)控系統(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芯片;可以支持低速和高速模式,能自動(dòng)偵測(cè)低速模式1. 5 Mbps設(shè)備和高速模式12Mbps全速設(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通過這幾根控制線完成對(duì)SL811HS片內(nèi)緩沖區(qū)的讀寫、片選和復(fù)位等操作。INT是SL811HS的中斷請(qǐng)求信號(hào)線。當(dāng)SL811HS檢測(cè)到優(yōu)盤插入、拔出時(shí),通過將INT線拉高通知S3C44B0X。S3C44B0X可以通過查詢SL811HS片內(nèi)狀態(tài)寄存器來得知是優(yōu)盤插入或是拔出。對(duì)狀態(tài)寄存器進(jìn)行寫操作可以清除中斷,但需要注意的是ARM的結(jié)構(gòu)特性。ARM內(nèi)部通常是Little Endian方式存儲(chǔ)和使用4字節(jié)對(duì)齊方式[1],并且當(dāng)