U 盤即閃存盤,是一種用閃存進行數據存儲的介質,通常使用USB 插頭。U 盤體積極小、重量輕、可熱插拔也可以重復寫入。U 盤所儲存的數據,現今仍大多通過計算機提取并進行處理,這也局限了U 盤的發展范圍。
筆者認為,針對某一特定功能,剝離相應數據對計算機的依賴性,一方面可充分利用U 盤數據,另一方面也發揮出USB 協議的通用性,使U 盤實現所用即所得的便攜特性。基于此,設計了U 盤MP3 播放器電路,主要完成U 盤存儲的音頻文件的數據提取及功能運行任務。該播放器等同于個人計算機的音頻處理模塊,不僅可識別、提取U 盤所存儲的MP3、WMA 或MIDI格式的文件,并可自行完成音頻解碼等數據處理工作,最后送入揚聲器或耳機進行播放。
1 播放器組成原理框圖
播放器組成原理如圖1 所示,共由3 個主要模塊組成: 單片機處理模塊,由STC12C4A60S52 單片機及其外圍電路組成; U 盤讀寫模塊,由CH375 及其外圍電路組成; 為音頻解碼模塊,由VS1003 芯片及其外圍電路組成。
播放器的工作過程是: MCU 通過CH375 讀取來自USB 存儲設備的數據,并依據功能鍵的控制指令,將USB 存儲設備的相關數據送入音頻解碼模塊,在VS1003 解碼后,送入揚聲器或耳機。設置6 個人機交互功能按鍵,分別實現播放、暫停、上一曲、下一曲、增大音量、減小音量等基本操作功能。
如圖1 所示,主要完成U 盤讀寫、單片機處理及音頻解碼3 個模塊的電路設計。
?
圖1 原理方框圖
2. 1 U 盤讀寫模塊
U 盤讀寫模塊由CH375 及其外圍電路組成,其構成如圖2 所示。
?
圖2 CH375 外圍硬件電路
CH375 是USB 總線通用接口芯片,支持USB 主機及從設備方式。在本地端,CH375 具有8 位數據總線和讀、寫、片選控制線以及中斷輸出,可以方便地掛接到單片機/DSP/MCU/MPU 等控制器的系統總線上。在USB 主機方式下,CH375 還提供了串行通訊方式,通過串行輸入、輸出和中斷輸出與單片機/DSP/MCU/MPU 等相連接。
CH375 的USB 主機方式支持常用的USB 全速設備,外部單片機可通過CH375 按照相應的USB 協議與USB 設備通訊。CH375 還內置了處理Mass - Storage海量存儲設備的專用通訊協議的固件,外部單片機可以直接以扇區為基本單位讀寫常用的USB 存儲設備。
設計中,CH375 采用主機方式,圖中J1為USB 插座,可連接U 盤等存儲設備,D1為指示LED,當檢測到USB 設備連接時燈亮。當TXD 引腳連接到地時,CH375 工作在并口方式,此時圖中JP1接口D0 ~ D7為雙向數據總線,連接單片機。
單片機連接圖中JP2接口,通過程序控制CH375,其功能及特性如表1 所示。
表1 JP2功能及特性
?
單片機通過寫命令來和數據來控制CH375,并通過CH375 獲得U 盤數據。CH375 內置相關的固件程序,自動處理了USB 等協議。單片機可以通過CH375直接獲取U 盤扇區的數據,因此只需處理FAT 文件系統層就可以實現對U 盤文件的操作。
2. 2 MCU 模塊
MCU 模塊,由STC12C4A60S52 單片機及其外圍電路組成。STC12C5A60S2 是宏晶科技生產的單時鐘/機器周期的單片機,指令代碼完全兼容傳統8051,但速度快8 ~ 12 倍,提供Flash 程序存儲器60 kByte,1 kByte的EEPROM,片上集成1 280 Byte RAM.工作電壓5. 5 ~ 3. 5 V,內部集成MAX810 專用復位電路,4個定時器,2個串口,2路PWM,8 路高速10 位A/D 轉換, ISP /IAP,內置看門狗電路,外部掉電檢測電路等。
圖3 為播放器MCU 模塊的硬件電路原理圖,其中, JP4為電源輸入接口,D1為電源指示燈,排阻Rp1為P0口的上拉電阻。JP2和JP3接到U 盤讀寫模塊對應的接口上。由于單片機在5 V 電源下工作,而VS1003在3. 3 V 電源下,所以工作P1口應該接限流電阻到JP1再到音頻解碼模塊對應的接口上。電路設置5 個功能按鍵,"UP"為增大音量,"DOWN"為減小音量,"LEFT"為選擇上一曲,"DOWN"為選擇下一曲,而"PLAY"為播放/暫停鍵。
?
圖3 MCU 模塊硬件電路
2. 3 音頻解碼模塊
音頻解碼模塊,由VS1003 芯片及其外圍電路組成。VS1003 是一個單片MP3 /WMA/MIDI 音頻解碼器和ADPCM 編碼器。它包含一個高性能低功耗的DSP 處理器核VS_DSP、工作數據存儲器、為用戶應用提供5 kB 的指令RAM 和0. 5 kB 的數據RAM、串行控制和數據接口、4 個常規用途的I /O 口、1 個UART、1個高品質可變采樣率的ADC 和立體聲DAC、1 個耳機放大器和地線緩沖器。
VS1003 通過一個串行接口接收輸入的bit 流,可作為一個系統的從機。輸入的bit 流被解碼,然后通過數字音量控制器到達1 個18 位過采樣多位ε - ΔDAC.VS1003通過串行總線控制解碼器,除了基本解碼功能,在用戶RAM 中還可以做其他特殊應用,例如DSP 音效處理。
圖4 為播放器的VS1003 外圍硬件電路原理圖,其中,AVDD 為模擬正電源3. 3 V,CVDD 為數字正電源2. 5 V, IOVDD 為I /O 正電源3. 3 V,模擬地與數字地用0 電阻隔離。J1、J2均為3. 5 音頻插座,J1為音頻輸出,J2為音頻輸入。
?
圖4 VS1003 外圍硬件電路
單片機通過對VS1003 寄存器的寫入來設置VS1003 芯片,對VS1003 數據緩沖區寫入數據,使其解碼。
3 軟件程序流程圖
單片機程序主要解決讀取CH375 數據,和寫入VS1003 寄存器用于播放音樂兩個問題。其中,5 種功能分別與圖3 的5 個功能按鍵一一對應。軟件程序流程圖如圖5 所示。
?
圖5 程序流程圖
4 結束語
如圖所示,旨在將音頻處理功能從計算機剝離,拓展U 盤使用范圍,設計了針對U 盤音頻文件數據處理的播放器電路,并用C 語言編寫了相關程序。實際運行結果證明,該播放器完全符合設計預期,U 盤即插即用,不僅可播放U 盤中指定目錄中的MP3文件、WMA 文件、MIDI 文件,還可以通過按鍵控制,實現各種功能。整個系統電路的性價比較高,具有較強的可拓性。
評論
查看更多