采用編程數據來(lái)完成RC網(wǎng)絡(luò )切換的可編程濾器芯片解析方案
在工業(yè)自動(dòng)化的許多領(lǐng)域都要使用濾波器。一般有源濾波器均由運算放大器和RC元件組成,對元器件的參數精度要求比較高,設計和調試都比較麻煩。美信公司(MAXIM)生產(chǎn)垢可編程濾波器芯片MAX262可以通過(guò)編程對各種低頻信號實(shí)現低通、高通、帶通、帶阻以及全通濾波處理,而且濾波的特性參數如中心頻率、品質(zhì)因數等也可以通過(guò)編程進(jìn)行設置。
本文引用地址:http://dyxdggzs.com/article/201610/308609.htm有源濾波器一般通過(guò)改變RC網(wǎng)絡(luò )參數來(lái)改變頻率特性,采用運算放大器和可切換元件參數的RC網(wǎng)絡(luò ),可以用同一電路組成各種頻率特性的濾波器。美信公司的可編程濾器芯片采用編程數據來(lái)完成RC網(wǎng)絡(luò )的切換。
1 MAX262芯片介紹
(1)內部結構
MAX262 主要由放大器、積分器、電容切換網(wǎng)絡(luò )(SCN)和工作模式選擇器組成。積分器、電容切換網(wǎng)絡(luò )(SCN)和工作模式選擇器分別由編程數據M0M1, F0~F5和Q0~Q6控制。MAX262內部有兩個(gè)二級濾波器,濾波器A和B可以單獨使用,也可級聯(lián)成四階濾波器使用。芯片的使用非常靈活,但它們均受同一組編程數據的控制。
MAX262芯片的工作頻率為1Hz~140kHz。當時(shí)鐘頻率為4MHz,工作模式選擇為模式3時(shí),芯片可以對140kHz的輸入信號進(jìn)行濾波處理。其它工作模式的最高工作頻率為100kHz。濾波器A和B可以采用內部時(shí)鐘,也可以采用外部時(shí)鐘。外部時(shí)鐘分別從芯片的引腳CLKA、CLKB引入,對外部時(shí)鐘無(wú)占空比要求。如果要對更低頻率的信號進(jìn)行濾波處理,可采用MAX260芯片,它的工作頻率為0.01Hz~7.5kHz。輸入的低頻信號可以直接送到MAX260芯片的輸入端(即INA或INB引腳),輸入信號的幅度范圍為0V~+5V。
(2)編程參數
MAX262芯片有三個(gè)編程參數:中心頻率f0、Q值和工作模式。
中心頻率由編程數據F0~F5控制,共64個(gè)不同的二進(jìn)制數據,每個(gè)數據對應一個(gè)時(shí)鐘頻率fclk與中心頻率f0的比值fclk/f0。在文獻[1]的表2 中給出了MAX262芯片的fclk/f0與編程數據F0~F5的對應關(guān)系。在系統實(shí)現時(shí),可以采用查表的方法獲得編程數據。本文采用計算的方法來(lái)形成編程數據F0~F5。
Q值由編程數據Q0~Q7控制,共128個(gè)不同的二進(jìn)制數據,每個(gè)數據對應一個(gè)同的Q值,最小的Q值為0.5,最大的Q值為64(如果芯片工作在模式2則可達90.5)。在文獻[1]的表3中給出了編程數據Q0~Q7與Q值的對應關(guān)系。
工作模式由編程數據M0M1控制,分別對應工作模式1、2、3和4。模式1可以實(shí)現低通、帶通和帶隨濾波;模式2基本與模式1相同,只是該模式可以獲得最高的Q值;模式3是唯一可以實(shí)現高通濾波的模式;而只有模式4才能實(shí)現全通濾波,它和模式3也可以實(shí)現低通和帶通濾波。
編程參數f0、Q值和工作模式確定以后,只要將相應的編程數據裝入MAX262芯片內部的寄存器,濾波器的類(lèi)型和頻率特性也就確定了。
2 單片機硬件設計
MAX262芯片的編程輸入總線(xiàn)比較簡(jiǎn)單,它包括2條數據線(xiàn)D0D1,4條地址線(xiàn)A0~A3,另外還有一條寫(xiě)允許控制線(xiàn)WR。單片機采用內部有4KB程序存儲器的89C51。
本系統采用6264芯片擴展數據存儲器。由于74LS138譯碼器使用89C51 P2口的高三位進(jìn)行地址譯碼,則6264的地址范圍為0000H~1FFFH。
74LS138 譯碼器的輸出Y2作為8279芯片的片選信號CS,其地址范圍為4000H~5FFFH。經(jīng)74LS373鎖存后的地址線(xiàn)A0送到8279的A0地址輸入端,所以選擇5FFFH作為8279的命令口地址,5FFEH作為8279的數據口地址。89C51的晶振選用12MHz,其ALE信號經(jīng)4分頻后,得到頻率為500kHz的信號送到8279的CLK輸入端和為時(shí)鐘信號。8279采用中斷方式,占用89C51的外中斷0。8279采用8個(gè)七段LED顯示器,其ALE信號經(jīng)4分頻后,得到頻率為500kHz的信號送到8279的CLK輸入端作為時(shí)鐘信號。8279采用中斷方式,占用89C51的外中斷0。 8279采用8個(gè)七段LED顯示器,其鍵盤(pán)按照如下:10個(gè)數字鍵0~9,1個(gè)小數點(diǎn)鍵,5個(gè)功能鍵(即用于選擇濾波器的類(lèi)型,低通、帶通、高通、全通和帶阻濾波),1個(gè)回車(chē)鍵,其17個(gè)按鍵。
89C51的WR 控制信號和74LS138譯碼器的Y1輸出信號相與后送到MAX262的WR寫(xiě)允許控制端,則MAX262的地址范圍為 2000H~3FFFH.MAX262的地址線(xiàn)Ax(即A0~A3)和數據線(xiàn)Dx(即D0D1)連接到89C51的P0口低六位,即A0~A3、D0D1 分別連接到P0.0~P0.5。89C51的ALE信號送到MAX262的CLKA和CLKB引腳作為時(shí)鐘信號,即MAX262的外部時(shí)鐘頻率為 2MHz,所以程控濾波器能處理的輸入信號頻率范圍為15kHz~50kHz,通過(guò)改變編程數據F0~F5實(shí)現64級中心頻率調節。
本系統選用模式1實(shí)現低通、帶通和帶阻濾波,模式3實(shí)現高通濾波,模式4實(shí)現全通濾波。其中,濾波器 A和B的高通、帶阻和全通濾波輸出端分別共用 MAX262的HPA、HPB引腳。需要處理的低頻輸入信號分別由MAX262的INA和INB引腳輸入,濾波器A和濾波器B的三個(gè)輸出端分別連接到模擬開(kāi)關(guān)4052的輸入端,然后由4052的輸出端輸出濾波處理后的信號,即圖1中的OUTA和OUTB兩路輸出信號。4052的地址A1、A0由89C51 的P1.1、P1.0控制,實(shí)現對濾波器類(lèi)型的選擇。
3 系統軟件實(shí)現方法
(1)編程數據獲得方法
MAX262的地址A0~A3與數據D0D1的關(guān)系見(jiàn)表1。由表1可見(jiàn)每個(gè)濾波器的工作模式、中心頻率、Q值所需編程數據均需要分8次寫(xiě)入MAX262的內部寄存器才能完成設置。
表1 MAX262的址A0~A3與數據D0D1的關(guān)系
通過(guò)文獻[1]給出的fCLK/f0與F0~F5的關(guān)系表格,得到本文根據fCLK/f0計算編程數據F0~F5的公式,即fCLK/f0與F0~F5的關(guān)系為:
fCLK/f0=40.84+1.57N1 (1)
或,N1為二進(jìn)制數據F0~F5對應的十進(jìn)制整數,范圍為0~63共64級。
同樣,對應濾波器的Q值也采用查表的方法,而是通過(guò)計算來(lái)獲得Q值的編程數據Q0~Q7。Q值與Q0~Q7的關(guān)系為:
Q=64/(128-N2) (3)
或 N2=64(2-1/Q) (4)
其中,N2為二進(jìn)數據Q0~Q6對應的十進(jìn)制整數,范圍為0~127共128級。
(2)系統程序流程
本系統的單片機主程序框圖見(jiàn)圖2。首先進(jìn)行初始化,包括對8279的初始化,然后從片內RAM中讀取新設置標志位進(jìn)行判斷。如果不是則給MAX262芯片送入濾波器所需的初始工作參數;是新設置則根據鍵中斷服務(wù)程序獲得的鍵值進(jìn)行處理。
進(jìn)行新設置時(shí),首先根據輸入的鍵值完成對濾波器的選擇,包括濾波器A和B的設置選擇以及相應濾波器的類(lèi)型選擇;然后根據式(4),由輸入的Q值計算N2并轉換成二進(jìn)制編程數據Q0~Q6送片內RAM;同時(shí)根據式(2),由輸入的中心頻率f0值計算N1并轉換為二進(jìn)制編程數據F0~F5送片內RAM。在獲得 MAX262的工作參數后,根據表1將這些參數轉換為8字節的編程數據,由89C51的P0口送到MAX262。
設置完成后,MAX262就按照當前所要求的中心頻率和Q值對輸入信號進(jìn)行濾波處理。
最后調用顯示子程序,在LED數碼管顯示當前濾波器的工作參數,即中心頻率和Q值。
本文采用單片機89C51來(lái)完成對可編程濾波器MAX262的控制,很好地實(shí)現了有源濾波器設計工作。而且這種程控濾波器具有使用靈活、調試容易的特點(diǎn),一片MAX262就能完成對兩路輸入信號進(jìn)行二階濾波的處理。
如果需要四階濾波可以很容易通過(guò)濾波器A和B的級聯(lián)來(lái)實(shí)現,另外還可以通過(guò)對89C51的ALE信號進(jìn)行倍頻和分頻實(shí)現AMX262的所有工作頻率范圍。
評論