單片機控制的雙路有源濾波器設計
2 單片機硬件設計
MAX262芯片的編程輸入總線比較簡單,它包括2條數(shù)據(jù)線D0D1,4條地址線A0~A3,另外還有一條寫允許控制線WR。單片機采用內部有4KB程序存儲器的89C51。它與MAX262芯片構成的雙路程序控制濾波器系統(tǒng)硬件配置原理框圖如圖1所示。
本系統(tǒng)采用6264芯片擴展數(shù)據(jù)存儲器。由于74LS138譯碼器使用89C51 P2口的高三位進行地址譯碼,則6264的地址范圍為0000H~1FFFH。
74LS138 譯碼器的輸出Y2作為8279芯片的片選信號CS,其地址范圍為4000H~5FFFH。經(jīng)74LS373鎖存后的地址線A0送到8279的A0地址輸入端,所以選擇5FFFH作為8279的命令口地址,5FFEH作為8279的數(shù)據(jù)口地址。89C51的晶振選用12MHz,其ALE信號經(jīng)4分頻后,得到頻率為500kHz的信號送到8279的CLK輸入端和為時鐘信號。8279采用中斷方式,占用89C51的外中斷0。8279采用8個七段LED顯示器,其ALE信號經(jīng)4分頻后,得到頻率為500kHz的信號送到8279的CLK輸入端作為時鐘信號。8279采用中斷方式,占用89C51的外中斷0。 8279采用8個七段LED顯示器,其鍵盤按照如下:10個數(shù)字鍵0~9,1個小數(shù)點鍵,5個功能鍵(即用于選擇濾波器的類型,低通、帶通、高通、全通和帶阻濾波),1個回車鍵,其17個按鍵。
89C51的WR 控制信號和74LS138譯碼器的Y1輸出信號相與后送到MAX262的WR寫允許控制端,則MAX262的地址范圍為 2000H~3FFFH.MAX262的地址線Ax(即A0~A3)和數(shù)據(jù)線Dx(即D0D1)連接到89C51的P0口低六位,即A0~A3、D0D1 分別連接到P0.0~P0.5。89C51的ALE信號送到MAX262的CLKA和CLKB引腳作為時鐘信號,即MAX262的外部時鐘頻率為 2MHz,所以程控濾波器能處理的輸入信號頻率范圍為15kHz~50kHz,通過改變編程數(shù)據(jù)F0~F5實現(xiàn)64級中心頻率調節(jié)。
本系統(tǒng)選用模式1實現(xiàn)低通、帶通和帶阻濾波,模式3實現(xiàn)高通濾波,模式4實現(xiàn)全通濾波。其中,濾波器 A和B的高通、帶阻和全通濾波輸出端分別共用 MAX262的HPA、HPB引腳。需要處理的低頻輸入信號分別由MAX262的INA和INB引腳輸入,濾波器A和濾波器B的三個輸出端分別連接到模擬開關4052的輸入端,然后由4052的輸出端輸出濾波處理后的信號,即圖1中的OUTA和OUTB兩路輸出信號。4052的地址A1、A0由89C51 的P1.1、P1.0控制,實現(xiàn)對濾波器類型的選擇。
3 系統(tǒng)軟件實現(xiàn)方法
(1)編程數(shù)據(jù)獲得方法
MAX262的地址A0~A3與數(shù)據(jù)D0D1的關系見表1。由表1可見每個濾波器的工作模式、中心頻率、Q值所需編程數(shù)據(jù)均需要分8次寫入MAX262的內部寄存器才能完成設置。
表1 MAX262的址A0~A3與數(shù)據(jù)D0D1的關系
濾波器A | 濾波器B | ||||||||||
數(shù)據(jù)位 | 地 址 | 數(shù)據(jù)位 | 地 址 | ||||||||
D0 | D1 | A3 | A2 | A1 | A0 | D0 | D1 | A3 | A2 | A1 | A0 |
M0A F0A F2A F4A Q0A Q2A Q4A Q6A | M1A F1A F3A F5A Q1A Q3A Q5A | 0 0 0 0 0 0 0 0 | 0 0 0 0 1 1 1 1 | 0 0 1 1 0 0 1 1 | 0 1 0 1 0 1 0 1 | M0B F0B F2B F4B Q0B Q2B Q4B Q6B | M1 F1B F3B F5B Q1B Q3B Q5B | 1 1 1 1 1 1 1 1 | 0 0 0 0 1 1 1 1 | 0 0 1 1 0 0 1 1 | 0 1 0 1 0 1 0 1 |
通過文獻[1]給出的fCLK/f0與F0~F5的關系表格,得到本文根據(jù)fCLK/f0計算編程數(shù)據(jù)F0~F5的公式,即fCLK/f0與F0~F5的關系為:
fCLK/f0=40.84+1.57N1 (1)
或,N1為二進制數(shù)據(jù)F0~F5對應的十進制整數(shù),范圍為0~63共64級。
評論