基於單片機控制的程式控制有源濾波器電路
| [日期:2008-9-23] |
來源:國外電子元器件 作者:趙世強,周義健,劉霞 |
[字型:大 中 小] |
1 引言
有源濾波器廣泛應用於數字訊號處理、通訊、自動控制領域,但設計可變寬頻帶有源濾波器則比較困難。利用單片機控制參數可程式化的雙二階通用開關電容有源濾波器,精確設定有源濾波器的中心頻率fO,品質因數Q及有源濾波器的工作方式。
2 開關電容有源濾波器工作原理
開關電容有源濾波器的基本原理是在電路兩節點之間接具有高速開關的電容器,等效於兩節點之間串連一隻電阻。圖1(a)是一個有源RC積分器,圖1(b)是採用一隻接地電容C1和CMOS開關T1、T2替代輸入電阻R1。圖1(c)是不重疊的兩相時鐘脈衝,用於驅動T1、T2。時鐘頻率fCLK高於訊號頻率。當φ1為高電平時,T1導通(視短路)而T2截止(視開路),此時C1與輸入訊號VI相連並充電(1(d)所示),即有電荷qcl=C1V1。當φ2為高電平時,T1截止而T2導通,此時C1與輸入訊號VI斷開而接至運算放大器的輸入端,C1放電,充電電荷qc1傳輸至C2。每一刻度Tc內,從訊號源提取的電荷qcl=C1VI提供至積分電容器C2。因此,在節點1、2之間流過的平均電流為iav=C1VI/TC。若TC足夠短,可近似認為這一過程是連續的,因而可在兩節點間定義一隻等效電阻Req,即Req=VI/iav和Req=Tc/C1。這樣可得到等效積分器時間常數τ,即τ=C2Req=TCC2/C1。顯然,濾波器頻率響應的時間常數τ取決刻度TC和電容比值C2/C1,而與電容的絕對值無關,整合電路工藝製作小容量電容易於實現。當電容比值恒定時,改變時鐘頻率,就可改變濾波器的截止頻率,即開關電容濾波器的基本工作原理。
3 MAX262簡介
MAX262是美國Maxim公司生產的雙二階通用開關電容有源濾波器,其引腳功能及內部框圖2所示。MAX262內部整合有2個結構相同的二階通用開關電容有源濾波器及1個獨立的運算放大器OP。這兩個有源濾波器既可獨立使用,也可串聯使用。對濾波器的工作方式,中心頻率fO,品質可通過D0D1,A0~A3連接埠線在WR上升沿寫入所選中的內部單元來設定濾波器的工作方式、中心頻率fO以及品質因數Q等參數。詳見表1所列。其中,中心頻率fO的範圍為1 Hz~140 kHz。fCLKA和FCLKB為內部開關電容網路所需的外部時鐘,一般為中心頻率fO的幾十至上百倍。
表1中MOM1為工作方式,僅在地址為A3A2A1A0=0000(或1000)時才能寫入。F0~F5為fO控制字,Q0~Q6為品質因數Q的控制字。D0D1=00時為工作方式1,實現LP(低通)、BP(帶通)、N(陷波)功能:DOD1=01時為工作方式2,實現區別於工作方式1的LP(低通)、BP(帶通)、N(陷波)功能;D0D1=10時為工作方式3,實現LP、BP、HP(高通)功能;D0D1=10時,若使用獨立運放OP為工作方式3A,實現有別於工作方式3的LP、BP、HP功能。D0D1=11時為工作方式4,實現LP、BP、AP(全通)功能。MAX262有INA、INB兩個訊號輸入端,允許最大輸入電壓振幅為±4.7 V。
4 程式控制有源濾波器硬體電路設計
程式控制有源濾波器硬體電路框圖3所示。利用89C51修飾鍵盤顯示器8279、可程式化計數器8254、可程式化有源濾波器MAX262。其中8254是3通道16位可程式化計數器,計數時鐘頻率可達10 MHz,可向MAX262提供精確的時鐘頻率fCLKA和fCLKB。
本系統設計要求濾波器可設定為低通,其-3 dB截止頻率fc在1 kHz~20 kHz調節頻率的步進值為1 kHz內要求在2fc處濾波器幅頻特性下降不小於10 dB;同時濾波器可設定為高通濾波器,其fc範圍及步進值與低通模式相同,其要求0.5fc處濾波器幅頻特性下降不小於10 dB。將濾波器A設定為工作方式1,濾波器B設定為工作方式3。二階有源低通濾波器的傳遞函數為:GL(s)=HOLP[(ω0/(s2+2ω0/Q+ω0)],(HOLP為直流增益)。令|GL(s)|為0.707HOLP處的頻率為fc,則
經計算當Q=0.7時,fc=f0,2fc處幅頻增益為-12 dB(實測小於-12 dB),滿足要求。對於高通濾波器當q=0.7時,同樣要求增益在fc=f0處下降3 dB,而在0.5fc處幅頻增益為-12 dB。根據參考文獻提供的資料,fCLKA/f0(或fCLKB/f0)的比值必須高於40.84。濾波器工作在方式1或方式3時,fCLK/f0=[π(26+N1)]/2,N1為F0~F5的值,取N1=10,則fCLK/fO=56.55。Q=64/(128-N2),因為Q=0.7,所以N2=Q0~Q5=37。當fO=1 kHz時,fCLKB=56.55 kHz。
5 程式控制方式的實現
由MAX262工作原理可知,當工作方式、F0~F5、Q0~Q5值寫入MAX262後,若要對濾波器的工作頻率fO實現步進值為1 kHz的程式控制,只要使fCLKA/fO(或fCLKB/fO)的比值為56.55即可。本電路設計採用8254可程式化計數器產生fCLKA和fCLKB。8254是3通道
16位可程式化計數器,最高計數脈衝頻率fCLK為10MHz,當被設定為工作方式3時為方波發生器輸出,通道0的輸出作為fCLKA,通道1的輸出作為fCLKB。由於8254是16位可程式化計數器,經其分頻後輸出方波的頻率fCLKA和fCLKB對fO的比值接近56.55,若fCLKA、fCLKB為固定值,用F0~F5的設定時,fCLKA/fO或fCLKB/fO僅有64種選擇,顯然精度較低。當通過鍵盤輸入fO值後,單片機計算出相應的分頻係數MA、MB寫入8254。若步進值為固定值,則將對應fO的MA、MB以表格形式進行儲存,直接查表即可。
6 結束語
基於單片機控制的可程式化有源濾波器可實現低通、高通、帶通、陷波、全通濾波器。在程式控制下可精確地改變濾波器的頻寬、中心頻率及品質因數Q,經實際測試效果良好。當MAX262作為低通濾波器使用時,為了抑制開關頻率fCLKA產生的雜訊,可在濾波器的輸出端串聯一個截止頻率小於最低fCLKA的連續時間的低通濾波器,其效果更好。