欢迎来到天天文库
浏览记录
ID:52070350
大小:343.50 KB
页数:4页
时间:2020-03-22
《IIR滤波器的MATLAB仿真.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、IIR滤波器的MATLAB仿真在这个仿真中,用设计的IIR滤波器将含有两种频率的正弦信号中的高频分量滤除掉。待处理的信号为:y=sin(2*10000*pi*t)+sin(2*pi*1000*t)。目的是将其中调频分量sin(2*10000*pi*t)滤除掉。代码如下:N=5000;Fs=80000;Ts=1/Fs;f1=10000;f2=1000;t=linspace(0,N*Ts,N);s1=sin(2*pi*f1*t);s2=sin(2*pi*f2*t);s=s1+s2;%-滤波器参数wp=2*2*pi*1500/(2*pi*Fs);ws=2*2*pi*2500/(2*pi*F
2、s);Rp=2;As=20;[NN,wc]=buttord(wp,ws,Rp,As,'s');[b,a]=butter(NN,wc);[H,W]=freqz(b,a);y=H_filter(b,a,s);%figureshow;showspot=500;subplot(411);plot([1:500],s1(1:500));title('输入信号分量1');axis([0showspot-1.21.2]);subplot(412);plot([1:500],s2(1:500));title('输入信号分量2');axis([0showspot-1.21.2]);subplot(41
3、3);plot([1:500],s(1:500)/2);title('混合信号');axis([0showspot-1.21.2]);subplot(414);plot([1:500],y(1:500));title('滤波输出');axis([0showspot-1.21.2]);IIR滤波器的DSP实现#include#include#include#definepi3.1416#defineN5000//采样点数#defineFs80000//#defineTs1/Fs#definef110000#definef21000#
4、definelenxN#definelena7#definelenb7doublet[N],s1[N],s2[N],s[N];doublea[lena],b[lenb];doubley[lenx]={0};voidmain(){FILE*fp_a,*fp_b,*fp_y;externvoidfilter(doubley[],doubleb[],doublea[],doublex[],intc_lenb,intc_lena,intc_lenx);externintmin(inta,intb);inti;for(i=0;i5、]);}for(i=0;i6、=0;i
5、]);}for(i=0;i6、=0;i
6、=0;i
此文档下载收益归作者所有