首頁(yè) > 評(píng)測(cè) > PSoC 6評(píng)測(cè)第四篇-錄音與放音
PSoC 6評(píng)測(cè)第四篇-錄音與放音
- [導(dǎo)讀]
- 寫上一篇關(guān)于EInk的文章的時(shí)候,就想著要寫這一篇了.因?yàn)樽髡弑救顺讼矚g閱讀之外,還比較喜歡音樂.也喜歡聽也喜歡唱K,故此對(duì)音頻相關(guān)的技術(shù)也較為感興趣,至于水平只能說稍知一二.看到這個(gè)CY8CKIT開發(fā)套件上帶有數(shù)字麥克風(fēng),就動(dòng)了心思.本文使用開發(fā)板子上的資源做一個(gè)簡(jiǎn)單的錄音與放音實(shí)驗(yàn),研究一下相關(guān)知識(shí).
概述
圖 PSoC 6與耳機(jī)
寫上一篇關(guān)于EInk的文章的時(shí)候,就想著要寫這一篇了.因?yàn)樽髡弑救顺讼矚g閱讀之外,還比較喜歡音樂.也喜歡聽也喜歡唱K,故此對(duì)音頻相關(guān)的技術(shù)也較為感興趣,至于水平只能說稍知一二.看到這個(gè)CY8CKIT開發(fā)套件上帶有數(shù)字麥克風(fēng),就動(dòng)了心思.本文使用開發(fā)板子上的資源做一個(gè)簡(jiǎn)單的錄音與放音實(shí)驗(yàn),研究一下相關(guān)知識(shí).
錄音理論與實(shí)踐
錄音方面,簡(jiǎn)單來(lái)講就是將聲音信號(hào)定時(shí)采集成數(shù)字信號(hào)以備后述處理.最常見的當(dāng)然是駐極體的麥克風(fēng):
圖 駐極體音頻采集參考電路
采集出來(lái)的信號(hào)叫做PCM,數(shù)學(xué)原理上就一個(gè)一維數(shù)組,其單元對(duì)應(yīng)每個(gè)時(shí)刻的聲音震動(dòng)的幅度.播放時(shí)將其恢復(fù)為介質(zhì)振動(dòng)即可還原當(dāng)初的聲音.
信號(hào)大致這種樣子:
圖 PCM信號(hào)參考例子
注意:上述信號(hào)為CY8CKIT板子通過PDM采樣轉(zhuǎn)換為PCM的實(shí)際例子
至于采樣率,采樣深度,壓縮算法等等,感興趣的同學(xué)可以找一找本人之前發(fā)的系列貼子,因?yàn)閮?nèi)容較多在此不一一照搬過來(lái)了.
今天要使用的錄音器件并非駐極體麥克風(fēng),而是一個(gè)PDM格式的麥克風(fēng)SPK0838HT4H-B,原理圖:
圖 數(shù)字麥克風(fēng)原理圖
這種麥克風(fēng)出來(lái)的信號(hào)并非直接的PCM, 而是所謂的PDM信號(hào),類似于下圖所示:
圖 PDM信號(hào)參考例子
簡(jiǎn)單來(lái)講,PDM信號(hào)就是1 bit的ADC采樣出來(lái)的結(jié)果.
之所以使用PDM,不使用PCM輸出,理論上有很多依據(jù).簡(jiǎn)而言之,是因?yàn)槁曇粼诮橘|(zhì)中傳播是縱向傳輸,亦即傳播方向與振動(dòng)方向是相同的,故此用脈沖密度能比脈沖幅度更忠實(shí)地反映真實(shí)的情形.當(dāng)然這種麥克風(fēng)還有其余的優(yōu)點(diǎn),如體積比駐極體的麥克風(fēng)小很多,功耗也更低,穩(wěn)定性,一致性之類的參數(shù)都要強(qiáng)不少.目前的趨勢(shì)是駐極體形式的麥克風(fēng)逐步被這種麥克風(fēng)取代,如智能手機(jī)中都是使用這種麥克風(fēng).
由于采集進(jìn)來(lái)的第一手?jǐn)?shù)據(jù)為PDM形式,故此需要首先將其轉(zhuǎn)換為PCM格式以便進(jìn)一步的處理與播放.處理的方法一般是通過軟件抽樣+濾波,Cypress的PSoC 6器件的方式較為特殊,可以使用UDB資源對(duì)PDM進(jìn)行硬件解碼轉(zhuǎn)換為PCM信號(hào),省去軟件上的處理.此處在后文詳述.
放音理論與實(shí)踐
對(duì)于PCM信號(hào),播放起來(lái)較為直觀,直接將其輸出到DAC,再經(jīng)過可選的濾波/放大,輸出到放音設(shè)備即可播放.
但是很多微型控制器沒有DAC外設(shè),此時(shí)可以通過PWM+低通濾波器來(lái)模擬DAC進(jìn)行播放.這也是所謂的D類放大器的原理.
圖 PWM+濾波器模擬DAC
這兩種方法本文都會(huì)使用,DAC與PWM分別作為一個(gè)通道進(jìn)行輸出.
頂層設(shè)計(jì)與硬件連接
圖 頂層設(shè)計(jì)
其中有三個(gè)模塊(PDM_PCM,VDAC,UART)有Prototype水印,表示該模塊只是做演示之用,還沒有到達(dá)能應(yīng)用到產(chǎn)品的成熟度.本文也的確是僅僅作演示之用,故此可以不加理會(huì).
首先看PDM_PCM模塊幾個(gè)參數(shù)的計(jì)算:
最終想要達(dá)到的采樣率為8KHz, Sinc抽樣率為64, HFClk1計(jì)算為16.384MHz.
下面的Audio Timer用作播放更新,故此也設(shè)定為8 KHz產(chǎn)生一次ISR:
-
- 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!
網(wǎng)友評(píng)論
- 聯(lián)系人:巧克力娃娃
- 郵箱:board@21ic.com
- 我要投稿
-
歡迎入駐,開放投稿
- NRF52810藍(lán)牙數(shù)字耳機(jī)找人定制
預(yù)算:¥30005天前
- 125KW模塊式PCS軟硬件外包開發(fā)
預(yù)算:¥1100000015小時(shí)前
- 12V汽車啟動(dòng)電源項(xiàng)目BMS設(shè)計(jì)
預(yù)算:¥50000023小時(shí)前
- 數(shù)據(jù)可視化軟件 開發(fā)
預(yù)算:¥5000023小時(shí)前
- PLC項(xiàng)目調(diào)試修改
預(yù)算:¥100001天前
- 起動(dòng)電機(jī)控制器開發(fā)
預(yù)算:¥1100001天前