MATLAB-GUI设计FIR滤波器(窗函数) 联系客服

发布时间 : 星期六 文章MATLAB-GUI设计FIR滤波器(窗函数)更新完毕开始阅读7239d5c711661ed9ad51f01dc281e53a59025159

3.3.5 滤波器波形按钮的回调函数

根据输入的参数显示设计的滤波器的幅频特性和相频特性图,其程序如下: function FilterWave_Callback(hObject, eventdata, handles)

FilterWave(handles) %点击该按钮后自动运行FilterWave.m文件。 3.3.6 文本框Rp和Rs的函 数

系统根据输入的参数自动计算滤波器的通带波动和最小阻带衰减并显示在文本框中,为了防

止用户自动输入该两个参数,在文本框属性的:Enable项设为off,禁止输入参数。以下程序为低通滤波器部分,其他的详情请查看附录程序。

delta_w=2*pi/1000; %why is 1000

wpi=floor(wp1/delta_w)+1; %对wp1/delta_w取最近的整数 Rp=-min(db(1:1:wpi)); %Passband Ripple 实际通带波动 set(handles.RpValue,'string',num2str(Rp));%display Passband Ripple

wsi=floor(ws1/delta_w)+1; %对ws1/delta_w取最近的整数 Rs=-round(max(db(wsi:1:501))); %MinStopband attenuation 最小阻带衰减 set(handles.RsValue,'string',num2str(Rs));%display MinStopband attenuation 3.3.7 产生信号按钮的回调函数 回调函数程序如下: fs=100; t=(0:200)/fs;

Signal=sin(2*pi*t*5)+sin(2*pi*t*15)+sin(2*pi*t*30); %???????? axes(handles.SignalDisplay); plot(t,Signal); grid on;

3.3.8 滤波后的信号按钮的回调函数

function FilterSignal_Callback(hObject, eventdata, handles) FilterSignal(handles)

当点击该按钮后运行FilterSignal.m程序,该程序在FilterWave.m的基础上加上了产生信号

的程序滤波后显示在界面上。

3.3.9 按钮Quit的回调函数

退出滤波器设计窗口,其程序如下:

function Quit_Callback(hObject, eventdata, handles) close

3.4总程序的编写

[7]给出了附件1、附件2的程序,见附件

4 实验结果与显示 1 运行和结果显示

在图形界面下,选择要设计的滤波器选项,编辑框中输人要求设计的数字滤波器的性能指标, 选择“滤波器波形”命令按钮, 出现响应类型的滤波器的图形。

2显示不同窗函数的显示结果 5 结束语

GUI是实现人机交互的友好界面,具有强大的功能,[8]中说明了GUI可以完成许多复杂的程序模块。对于GUI在数字信号处理中的应用中,数字信号处理这门学科的知识是基础,要掌握数字信号处理的相关知识的原理后,并用代码来实现,才能很好地结合MATLAB进行GUI编程。 6 感谢

本文从资料的搜集、文章的修改到最后的定稿,自始至终都得到了导师魏武老师的悉心指导,

很感谢魏武老师对我的毕业设计给予时间宽限上的支持,在毕业设计中给予无私的指导与帮助才使我能够在有限的时间里完成了毕业设计任务。同时感谢在我完成毕业设计过程中给予我关心以及帮助的同学们。 7 参考文献

[1] 张志田、何其文.基于窗函数法的FIR 数字滤波器的设计[J].湖南科技学院学报.2007年

第9期

[2] 张登奇、李望移.基于MATLAB的FIR数字滤波器设计[J].计算机时代.2007年第11期 [3] 用matlab实现fir滤波器的设计[J].

http://wenku.http://m.china-audit.com//view/dfa11322aaea998fcc220e78.html

[4] 王艳芬等.数字信号处理原理及实现[M].北京.清华大学出版社,2008 [5] 曹弋.MATLAB教程及实训[M].北京.机械工业出版社,2008.05 [6] 基于MATLAB_GUI_的滤波器设计软件[J].

http://wenku.http://m.china-audit.com//view/b102840d6c85ec3a87c2c531.html [7] 陈垚光等.精通MATLAB GUI设计.北京.电子工业出版社,2008.02

[8] 飞思科技产品研发中心.MATLAB 7辅助信号处理技术与应用.北京.电子工业出版社,2005 附录