作者的話
ADAU1788是ADAU1787的閹割版,他們同內(nèi)核,都有SigmaDSP和FastDSP,模擬到模擬的延時都是5us,只不過1788只有2進2出,1787卻有4進2出。這個系列我就來說一說這顆ADAU1788的硬件和軟件都應(yīng)該怎么做設(shè)計。
OP我是把ADI所有型號的DSP全部都做過,對就是所有型號。所以后面每個型號我都計劃寫一個專題來講。
硬件準(zhǔn)備
ADUA1788開發(fā)板一塊:
產(chǎn)品簡介:https://item.taobao.com/item.htm?id=611967214868&spm=a1z10.5-c.w4002-5192690539.11.4dc8751aeC9yWu
USBi仿真器一個:
產(chǎn)品鏈接:https://item.taobao.com/item.htm?id=38242936768&spm=a1z10.5-c.w4002-5192690539.11.451e2dbdcpXpJX
軟件準(zhǔn)備
SigmaStudio4.6
硬件鏈接示意圖
ADAU1788 的進階例程 3:通用一階濾波器(General 1st-Order)
一階低通和高通濾波器。若要在高通、低通和平坦之間切換,請單擊藍色頻率響應(yīng)圖標(biāo)。該操作可實時完成,無需重新編譯項目。在文本字段中輸入目標(biāo)值,設(shè)定濾波器的截止頻率和總增益(有時稱為縮放增益)。也可單擊箭頭以逐一增大這些參數(shù)的值。若要快速增大參數(shù)值,請單擊并按住不放,然后略微拖動。
通過點擊藍色的按鈕,可以看到曲線的明顯變化,音效各位自己去聽聽,練聽力,有明顯差別:
**ADAU1788 的進階例程 4:通用一階濾波器,參數(shù)/查找/壓擺率 ( General (1st-Order Lookup)
**
這個濾波器提供一組可選高通或低通一階濾波器響應(yīng),選擇響應(yīng)時可平滑(壓擺率)過渡。該模塊允許您定義一組濾波器響應(yīng)(低通或高通),可通過終端系統(tǒng)中的外部控制輸入進行選擇??蛇x響應(yīng)或曲線的數(shù)量是可變的,就如控制著濾波器響應(yīng)變化速率的壓擺率或步進一樣。
濾波器響應(yīng)顯示在“濾波器控制”(Filter Control)窗口中(見下文)。請注意,響應(yīng)曲線線性分布于
低、高截止頻率值之間。該模塊的算法將一組濾波器系數(shù)存儲在 DSP 中的一個表中。若要選擇某個曲線,請使用“索引查找表”(Index Lookup Table)、 “計數(shù)器”(Counter)模塊或“直流輸入”(DC Input)模塊,并連接至紅色引腳。通過 GPIO 模塊,您可以用一個旋鈕、旋轉(zhuǎn)編碼器或按鈕控制所選響應(yīng)。
若要打開“濾波器控制窗口”:
1)在“曲線數(shù)”(# Curves)字段中輸入所需曲線的數(shù)目。
2)在“增益”(Gain)字段中輸入所需濾波器增益(-/+ dB)。
3)在“頻率”(Frequency)字段中輸入這些曲線的所需頻率范圍(低頻和高頻目標(biāo)頻率)
ADAU1788 的進階例程 5:通用二階濾波器General (2nd-Order)
很常用的一個濾波器模塊,通過這個濾波器模塊,你可以使用多種二階(雙二階)濾波器算法:
可用濾波器類型有:
1)參數(shù)型(Parametric)
2)支架型(Shelving)
3)通用高通型(General High-Pass)
4)通用低通型(General Low-Pass)
5)通用帶通型(General Band-Pass)
6)通用帶阻型(General Band-Stop)
7)巴特沃茲低通/高通型(Butterworth Low-Pass / High-Pass)
8)貝塞爾低通/高通型(Bessel Low-Pass / High-Pass)
9)信號音控制型(Tone Control)
10)IIR 系數(shù)型(直接系數(shù)輸入) (IRR Coefficient) (direct coefficient entry)
11)一階低通/高通型(1st-Order Low-Pass / High-Pass)
12)全通型(All-pass)
13)峰化型(Peaking)
14)陷波型(Notch)
15)切比雪夫低通/高通型(Chebyshev Low-Pass / High-Pass)
若要打開濾波器控制窗口,請單擊圖標(biāo)按鈕,從下拉組合列表中選擇所需濾波器類型。參數(shù)控制將發(fā)生變化,以反映當(dāng)前所選濾波器類型,模塊圖標(biāo)按鈕中的圖像也會相應(yīng)變化。
至于每個濾波器的算法,在 SigmaStudio 的 Help 里全部都有,我就不再這里重復(fù)了,如下圖:
ADAU1788 的進階例程 6:Pinking 濾波器
這類濾波器的經(jīng)典用途是將白噪聲(為每赫茲的等效能量)轉(zhuǎn)換為粉紅噪聲(為每比例或常數(shù)百分比(如對數(shù))頻帶的等效能量)。 若捆綁(集成)得當(dāng),此類能量將在任何對數(shù)比例圖中顯示為平坦。 Pinking 單元接受任何輸入信號,并輸出線性下降為 3dB/倍頻程的信號。
ADAU1788 的進階例程 7:跟蹤濾波器(Tracking Filter)
“跟蹤濾波器”(Tracking Filter)可用于對濾波進行動態(tài)轉(zhuǎn)移。這種特定的跟蹤濾波器采用一種“峰化濾波器”(PeakingFilter)算法。在多種應(yīng)用中,應(yīng)為峰化濾波器設(shè)定可移動中心頻率,而非固定中心頻率。例如,可用低頻振蕩器(LFO)驅(qū)動跟蹤濾波器,以產(chǎn)生定相音頻效應(yīng)。跟蹤濾波器允許通過外部輸入來確定中心頻率。
輸入引腳:
跟蹤濾波器模塊有兩個輸入和一個輸出。第一輸入是您希望進行過濾的實際音頻輸入。第二輸入引腳為濾波器中心頻率的值??梢钥闯觯撘_為橙色,表明這是一個控制引腳而非音頻引腳。在此,您可以連接低頻振蕩器或直流輸入模塊,用以為跟蹤濾波器指定所需固定或可移動中心頻率。
算法說明:
“跟蹤濾波器”是“SigmaStudio 濾波器”庫中的一種特有濾波器。這是系數(shù)由 DSP 處理器動態(tài)計算的少數(shù)幾種濾波器之一。計算方程嵌入模塊的算法代碼之中,然后生成系數(shù),視具體輸入中心頻率而定。
跟蹤濾波器算法可接受的輸入中心頻率為一個 5.23 數(shù)據(jù)格式的值,計算公式為:Hz/(fs/2)。例如,如果工作頻率為 fs = 44100 Hz,且 fc = 500 Hz,則發(fā)送值為: 0.0226757 = 500 /(44100/2)。
“跟蹤濾波器”以一種“IIR 峰化濾波器”(IIR Peaking Filter)的系數(shù)生成過程為基礎(chǔ)。以下方程說明了 DSP 由控件求得 5 個雙二階系數(shù)的方法。跟蹤濾波器的控件包括“總增益”(overall_gain)(即濾波器總增益的 dB 值)、 “增強”(boost)(即峰化濾波器的減弱或增強 dB 值)和“Q”(決定減弱或增強頻率的寬度)。 “峰化濾波器”的中心頻率 fc 由第二輸入引腳提供。
gainLinear = 10?(overall_gain/20)
w = 2pifc/Fs
alpha = sin(w)/(2Q)
A = 10?(boost/40)
a0 = 1 + alpha/A
a1 = -2 * cos(w)
a2 = 1 - alpha/A
b0 = (1 + alphaA) * gainLinear
b1 = -(2 * cos(w)) * gainLinear
b2 = (1 - alpha*A) * gainLinear
用途:
跟蹤濾波器可用于多種場合。當(dāng)峰化濾波器需采用可變中心頻率時,則應(yīng)使用跟蹤濾波器。固定中心頻率應(yīng)用應(yīng)使用通用二階濾波器。若要為這種算法所需可變中心頻率提供支持,則需開銷大量 MIPS/存儲器。然而,此處使用跟蹤濾波器的第一個例子采用了固定中心頻率,這只是為了便于說明中心頻率的格式。
此例中,一個直流輸入模塊與跟蹤濾波器的第二引腳相連。該模塊內(nèi)的值對應(yīng)為 500Hz。因此,從第一引腳輸入的音頻信號將在 500Hz 下被增強 5dB, 其“Q”值為 1.71; 同時將對整個頻率范圍用-3dB 的總增益調(diào)整。
ADAU1788 的進階例程 8:State-Variable 濾波器-高通低通帶通濾波-HP 輸出
該原理圖使用的是“狀態(tài)變量”(State-Variable)模塊,包括低通、高通和帶通三個濾波器的頻率響應(yīng)。
本著能聽到聲音的原則,目的在于告訴用戶高通低通帶通濾波模塊在哪里,學(xué)會用這個模塊后,用戶就可以自由發(fā)揮了。
ADAU1788 的進階例程 9:State-Variable 濾波器-高通低通帶通濾波-LP 輸出
ADAU1788 的進階例程 10:State-Variable 濾波器-高通低通帶通濾波-BP 輸出
文章來源:http://www.zghlxwxcb.cn/news/detail-798931.html
輸出 0 和輸出 1 又是偽模塊,為了滿足軟件的邏輯要求!文章來源地址http://www.zghlxwxcb.cn/news/detail-798931.html
到了這里,關(guān)于手把手教你使用ADI的音頻DSP:ADAU1788的濾波器專題2的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!