clear close all
r=2;
hm = mfilt.cicinterp(r);
fs=48000;%采样频率
Delta_f=1;%频率间隔
T=1/fs;%采样间隔
L=1/Delta_f;%时间长度
N=floor(fs/Delta_f);%采样点数
t=0:T:L-T;%时间轴
freq=0:Delta_f:fs-Delta_f;%频率轴
y=sin(2*pi*1000*t)';%原始信号
figure Y_t_hanning=hanning(N).*y;%加窗
F_w=fft(Y_t_hanning,N)+eps;%计算频谱
mag=abs(F_w);
dB=20*log10(mag);
plot(freq,dB);
title('原始信号频谱');
y_f = filter(hm,y);
y1=double(y_f) ;
y1=y1/max(abs(y1));
fs1=fs*r;%采样频率
Delta_f=1;%频率间隔
T1=1/fs1;%采样间隔
L=1/Delta_f;%时间长度
N1=floor(fs1/Delta_f);%采样点数
t1=0:T1:L-T1;%时间轴
freq1=0:Delta_f:fs1-Delta_f;%频率轴
figure Y_t_hanning=hanning(N1).*y1;%加窗
F_w=fft(Y_t_hanning,N1)+eps;%计算频谱
mag=abs(F_w);
dB1=20*log10(mag);
plot(freq1,dB1);
title('经过CIC滤波器插值后的信号频谱')
figure stem(t(1:48),y(1:48),'filled');
hold on stem(t1(1:48*r),y1(1:48*r),'r');
legend('原始信号','插值后的信号')
我的问题是:为什么滤波器前和滤波后的波形没有对齐;为什么滤波后的信号频谱会出现杂散,就是有很多谐波。请大虾给指点一下
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |