关于matlab实现FIR滤波中如何画的问题。程序如下:

[复制链接]
查看11 | 回复1 | 2011-4-30 10:53:50 | 显示全部楼层 |阅读模式
N=1024*1024;//输入信号的采样点数
t=0:1:N-1;
Fs=20000;//采样频率;
f1=2000;
f2=5000;
x1=2*sin(2*pi*f1*t/Fs);
x2=3*sin(2*pi*f2*t/Fs);
x=x1x2;//输入信号;
fp=4000;fs=4200;
wp=2*pi*fp/Fs;
ws=2*pi*fs/Fs;
wc=(wswp)/2/pi;
rs=80;
beta=0.112*(rs-8.7);
DB=ws-wp;
n=511;
hn=fir1(n,wc,kaiser(n1,beta));
yf=filter(hn,1,x);//输出信号;

我想要看一下输入、输出信号的频谱图,该对输入x和输出yf做多少点的FFT??还是说只需要取其几个周期的采样点来查看频谱图就可以,要是这样的话怎么在不改变N的情况下,取少量的输入输出信号的采样点数来查看频谱图?
回复

使用道具 举报

千问 | 2011-4-30 10:53:50 | 显示全部楼层
计算多少点的FFT要根据你观察频谱分辨率来确定,FFT中分辨的最小频率是采样频率/FFT点数,如果是去少量点的话,这些点是连续的就可以,
而且利用FFT看到的频谱。是归一化的,即,N点FFT的第N点对应2pi的频率,也就是信号采样时的采样频率









<h4class=\"ask\">追问


我知道了谢谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行