基于STM32F4和CPLD的高品質立體聲USB數(shù)字音頻接口設計
發(fā)布時間:2020-12-27 08:16
在高品質音頻系統(tǒng)應用中,USB協(xié)議被廣泛用于設計數(shù)字音頻輸入接口。目前專用USB數(shù)字音頻芯片較少,這阻礙了USB數(shù)字音頻接口的推廣使用。本文基于STM32F4系列芯片開發(fā)了符合USB Audio Devices Class 2.0規(guī)范的音頻輸入接口,使用CPLD實現(xiàn)了同時支持PCM和DSD數(shù)據(jù)的數(shù)字音頻輸出接口。依據(jù)設計方案制作了硬件實物,通過實驗驗證了設計的正確性和可行性。設計解決了通用芯片在數(shù)字音頻接口領域應用的難點,也可作為其他開發(fā)平臺的設計參考。
【文章來源】:電子產品世界. 2020年10期
【文章頁數(shù)】:5 頁
【部分圖文】:
基于ADC 2.0規(guī)范的音頻接口邏輯架構
硬件連接框圖
基于上述原理設計的播放處理狀態(tài)機的UML狀態(tài)圖如圖3所示,整個播放過程在播放監(jiān)控狀態(tài)中運行,在PlayGuard_IDLE狀態(tài)中程序接收相關的參數(shù)設置信號為播放做準備。PlayGuard_PLAYING是一個組合狀態(tài),其自身負責與USB底層模塊通信進行數(shù)據(jù)傳輸,其子狀態(tài)負責處理特定播放模式。音頻數(shù)據(jù)的流轉是程序的核心算法。音頻數(shù)據(jù)通過OUT傳輸寫入程序緩沖區(qū),數(shù)據(jù)由播放子狀態(tài)處理并寫入FIFO中。程序將DMA傳輸設置為雙緩沖模式,在DMA完成事件中,從FIFO讀出1組數(shù)據(jù),對雙緩沖區(qū)進行交替填充。在IN傳輸完成事件中,計算當前FIFO區(qū)數(shù)據(jù)長度,據(jù)此反饋數(shù)據(jù)傳輸率給主機,完成對數(shù)據(jù)長度的追蹤控制。
本文編號:2941401
【文章來源】:電子產品世界. 2020年10期
【文章頁數(shù)】:5 頁
【部分圖文】:
基于ADC 2.0規(guī)范的音頻接口邏輯架構
硬件連接框圖
基于上述原理設計的播放處理狀態(tài)機的UML狀態(tài)圖如圖3所示,整個播放過程在播放監(jiān)控狀態(tài)中運行,在PlayGuard_IDLE狀態(tài)中程序接收相關的參數(shù)設置信號為播放做準備。PlayGuard_PLAYING是一個組合狀態(tài),其自身負責與USB底層模塊通信進行數(shù)據(jù)傳輸,其子狀態(tài)負責處理特定播放模式。音頻數(shù)據(jù)的流轉是程序的核心算法。音頻數(shù)據(jù)通過OUT傳輸寫入程序緩沖區(qū),數(shù)據(jù)由播放子狀態(tài)處理并寫入FIFO中。程序將DMA傳輸設置為雙緩沖模式,在DMA完成事件中,從FIFO讀出1組數(shù)據(jù),對雙緩沖區(qū)進行交替填充。在IN傳輸完成事件中,計算當前FIFO區(qū)數(shù)據(jù)長度,據(jù)此反饋數(shù)據(jù)傳輸率給主機,完成對數(shù)據(jù)長度的追蹤控制。
本文編號:2941401
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/2941401.html
最近更新
教材專著