|
我明白一些了,但是有一点还是糊涂的,下面这两个程序都能实现在15hz处准确的显示fft的结果
如下:
1、
N=1200;
fs=120;
t=(0:N-1)/fs; % 时间序列
x=2*sin(2*pi*15*t);
figure(1)
subplot(2,1,1);
plot(t, x);
xlabel('t/s');
y=2*abs(fft(x,N))/N;
df = fs/N; %频域分辨率 Hz
f = (0:N/2-1)*df; %频域序列
subplot(2,1,2);
plot(f, y(1:N/2));
xlabel('f/Hz');
2、
N=1024;
fs=120;
t=(0:N-1)/fs; % 时间序列
x=2*sin(2*pi*15*t);
figure(1)
subplot(2,1,1);
plot(t, x);
xlabel('t/s');
y=2*abs(fft(x,N))/N;
df = fs/N; %频域分辨率 Hz
f = (0:N/2-1)*df; %频域序列
subplot(2,1,2);
plot(f, y(1:N/2));
xlabel('f/Hz');
就是N=1200 和 1024时,都可以得到正确的结果,N=其它的值却不行
因为现在还在犯糊涂,实在想不通,所以能告诉我这是为什么吗 |
|