www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

首頁 > 評測 > 一板在手音頻不愁-Audio BoosterPack開發(fā)板評測

一板在手音頻不愁-Audio BoosterPack開發(fā)板評測

  • 作者:zhanzr
  • 來源:21ic
  • [導讀]
  • 配合上靈活的排針組合,這模塊可以說與任何開發(fā)板子相配合都能開始搞音頻錄制播放的開發(fā).而且售價也不高,29.99 US$的價格可以說比起同類板子便宜不少.想搞音頻錄制播放的同學們不妨搞一塊來玩玩. TI的原意是用此板子與其他TI的開發(fā)板子一起配合使用,其實這板子是非常通用的.后文的實驗也會展示這一點.

圖 SPI設定為半雙工即可,因為只有寫

圖 數(shù)據(jù)大小設定為16bit

分頻方面也要注意,DAC8311號稱最高可以接收50MHz的SPI數(shù)據(jù),但實際操作中我發(fā)現(xiàn)高了某些數(shù)據(jù)會丟失.這里用保險一點的速率.

程序方面就是使用定時器做一個與采樣率同等頻率的中斷,在中斷中作標記,之后在主循環(huán)中更新DAC數(shù)據(jù).關鍵代碼:

if(g_Tim6_Flag)

{

HAL_GPIO_WritePin(CS_GPIO_Port, CS_Pin, GPIO_PIN_RESET);

__NOP();

g_Sample16 = 32767 + *((__IO int16_t *)(AUDIO_FILE_ADDRESS + g_SampleCnt*sizeof(int16_t)));

g_SampleCnt ++;

if((g_SampleCnt*sizeof(int16_t))>AUDIO_FILE_SIZE)

{

g_SampleCnt = 0;

}

HAL_SPI_Transmit(&hspi1, (uint8_t*)&g_Sample16, 1, 1);

__NOP();

HAL_GPIO_WritePin(CS_GPIO_Port, CS_Pin, GPIO_PIN_SET);

g_Tim6_Flag = false;

}

資源方面與上節(jié)采用相同的資源即可.

與上節(jié)相同,測試工程與代碼在后面附件中供下載.

圖 通過板上DAC播放

接法方面注意按照CubeMX截圖中接,另外排針那里別忘記跳到最上面一行.

實驗之三:PWM+LPF播放

 

圖 PWM播放音頻

這個程序利用Arduino Uno的板子的PWM來播放,聽起來這LPF效果還可以.原理方面就是PWM輸出再經過LPF濾波,這個以前本人寫過多次,不熟的讀者可以翻翻以前的文章,再輔以代碼應該能熟練掌握.

接法方面,還是差不多,注意別忘記跳線.其余接線看圖片應該不難明白.程序方面還是打包供大家下載.

總結與參考

TI設計的這個板子很強大,自帶揚聲器,自帶耳機麥克風接口,自帶放大器,自帶駐極體信號調理,自帶LPF.基本上做音頻播放錄制實驗,這個擴展模塊就夠了.

TI本身給的參考代碼,是基于自家的MSP430處理器的.本文的實驗說明,這個板子非常靈活,基本上可以應用于任何開發(fā)板.我想只要是能稱得上開發(fā)板子的,DAC,SPI,PWM這幾種接口應該至少有一種吧,ADC那就更普遍了.所以這板子也可稱開發(fā)板子的音頻伴侶.售價也不貴,29.99美元,實在值的擁有.

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

網(wǎng)友評論