基于Matlab GUI的模擬帶通濾波器的設計
4.2.2 “計算”菜單下各功能回調函數的編寫(xiě)
“計算”菜單下包含了“階數”、“零點(diǎn)”、“極點(diǎn)”、“增益”、“轉移函數分子系數”。其中,“轉移函數分母系數”菜單分別用來(lái)計算所設計的濾波器階數、零點(diǎn)、極點(diǎn)、增益、轉移函數分子系數、轉移函數分母系數;“階數”菜單用來(lái)計算所輸入參數濾波器的階數,并將它輸出到輸出參數框。在程序的設計中,首先判斷用戶(hù)所選擇濾波器的類(lèi)型,然后將計算出的參數用set函數輸出到輸出文本區。因為極點(diǎn)、零點(diǎn)值可能為復數,而文本編輯框的數據類(lèi)型為數值型,所以在輸出時(shí),利用num2str函數將得到的值進(jìn)行格式轉化,以防止出現復數值只能顯示出實(shí)部來(lái)?!半A數”菜單程序如下:
“階數”、“零點(diǎn)”、“極點(diǎn)”、“增益”、“轉移函數分子系數”、“轉移函數分母系數”子菜單中回調函數的程序設計基本一樣,只是在輸出值時(shí)參數名稱(chēng)不同。將階數子菜單程序中set語(yǔ)句的“n”換成相應菜單對應的變量名即可實(shí)現相應的功能。在完成了各個(gè)控件的回調函數編寫(xiě)后,對軟件的功能進(jìn)行逐一調試,以保證每項功能都能正確響應用戶(hù)的操作。
4.3 代碼優(yōu)化
在調試完軟件的各項功能后,應對所設計的軟件代碼進(jìn)行優(yōu)化。打開(kāi)軟件中使用次數比較多的程序段,利用Matlab中的程序執行耗時(shí)剖析功能函數profile指令對程序中執行耗時(shí)情況進(jìn)行分析,之后進(jìn)行改進(jìn),以提高執行效率。打開(kāi)設計出的軟件主程序M文件,對已經(jīng)優(yōu)化過(guò)且使用次數較多的程序段,應另外編寫(xiě)成函數形式,供需要的控件回調函數調用,在需要調用的相關(guān)控件回調函數下只需要填寫(xiě)相應的函數名稱(chēng)就能實(shí)現其相應的功能。
對于在界面設計時(shí)沒(méi)有用到的控件,對應生成的代碼可以直截刪去。最后在Matlab環(huán)境下,運行該程序,即可實(shí)現模擬帶通濾波器的設計和性能分析。利用該軟件對模擬帶通濾波器進(jìn)行了分析,其部分結果如圖4、圖5所示。
圖4為切比雪夫2型模擬帶通濾波器的幅頻特性和極點(diǎn)分析計算結果;圖5為切比雪夫1型模擬帶通濾波器零極點(diǎn)分析計算結果。分析結果表明,該軟件有助于模擬帶通濾波器的分析設計。
5 結 語(yǔ)
該文在分析模擬濾波器設計理論的基礎上,設計了基于Matlab GUI的模擬帶通濾波器設計軟件。利用該軟件可以分析濾波器的幅頻特性、相頻特性和零,極點(diǎn)分布特性等。如何將該課題的研究與實(shí)際的模擬濾波器設計整合在一起,將是下一步面臨的重要工作。同時(shí)也可利用該設計方法設計功能更大的濾波器分析設計軟件,使該軟件具有更大的實(shí)用價(jià)值。
低通濾波器相關(guān)文章:低通濾波器原理
電源濾波器相關(guān)文章:電源濾波器原理
高通濾波器相關(guān)文章:高通濾波器原理 數字濾波器相關(guān)文章:數字濾波器原理
評論