首頁 > 評測 > 【AT-START-F437測評】USB UAC HID聲卡

【AT-START-F437測評】USB UAC HID聲卡

  
  • 作者:
  • 來源:
  • [導(dǎo)讀]
  • # 前言 收到開發(fā)板快一個多月了,年前得了新冠又奈何項目太多就沒來得及評測 【AT-START-F437】,之前家里有塊 AT-START-F407 做一些應(yīng)用還是很不錯的,這次有機會有幸申請了 F437,平時開發(fā)中經(jīng)常開發(fā)音頻類
# 前言
      收到開發(fā)板快一個多月了,年前得了新冠又奈何項目太多就沒來得及評測 【AT-START-F437】,之前家里有塊 AT-START-F407 做一些應(yīng)用還是很不錯的,這次有機會有幸申請了 F437,平時開發(fā)中經(jīng)常開發(fā)音頻類產(chǎn)品,看到F437帶了USB 2.0 和 全雙工的 I2S 就覺得可以拿來做 【會議音響】、【USB聲卡】之類的產(chǎn)品,加上主頻能夠288Mhz,做一些3A算法應(yīng)該還是綽綽有余的。
# 正文
      USB UAC聲卡主要框架為:


硬件音頻輸出用的wm8978,板卡靚照:


由于軟件上使用了I2S雙工,根據(jù)文檔需要初始化I2S2為輸出,I2S2_EXT為錄音用,然后初始化對應(yīng)的DMA收發(fā)即可。



其中USB 聲卡最復(fù)雜的問題是音頻同步的問題,由于USB時鐘跟I2S的時鐘總是會有誤差的,這個誤差不僅限于時鐘,還有漂移和相位屬性誤差問題,因此USB UAC提共了一個反饋的機制來控制采樣率問題。感謝at32完善的bsp不需要去重新去編寫這個反饋機制。

HID功能
由于播放音頻的時候難免需要使用控制暫停,播放,音量+/-,因此修改了一下自帶的Audio_hid_desc里的Report,
然后封裝了一個函數(shù)來實現(xiàn)功能需求。





最后視頻來演示一下:


---


# 結(jié)束語
       寫這個評測的時候其實并不是打算做這個帖子來作為評測貼的,想著用這個性能做一些更高級點的應(yīng)用,本來打算做 SIP電話開源給大家的,標題都想好了【AT-START-F437測評】原創(chuàng)開源FreeRTOS+POSIX+LWIP+SIP網(wǎng)絡(luò)電話,移植都完成了功能實現(xiàn)了,連接SIP服務(wù)器也很正常,但是就是語音流傳輸?shù)臅r候出現(xiàn)了斷斷續(xù)續(xù),一開始考慮到是否是丟包問題,后面用網(wǎng)線直連也是斷續(xù)問題,然后測試一直都這樣,然后把又折騰把軟件移植到了 之前的 STM32F4的開發(fā)板上,結(jié)果沒有出現(xiàn)問題,下班吃完飯調(diào)到晚上深夜,幾個晚上排查大致感覺實在網(wǎng)絡(luò)發(fā)送的問題,但也不太確定哪里的問題.....
       閑話到此了,后續(xù)如果調(diào)通了,就單獨在開個分享貼子給大家。











  • 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!

網(wǎng)友評論