FFT点数、补零对结果的影响

增加点数可提高分辨率(比如之前3Mhz与3.05MHz的频率分辨不出来,增加点数可分辨出来),补零,时域补零相当于频域插值。

clear all; clc; close all;
 
fs=200;                            % 采样频率
f1=30; f2=65.5;                    % 两信号频率
N=256;                             % 信号长度
n=1:N;                             % 样点索引
t=(n-1)/fs;                        % 时间刻度
x=cos(2*pi*f1*t)+cos(2*pi*f2*t);   % 信号
 
X1=fft(x);                         % 按N点进行FFT
freq1=(0:N/2)*fs/N;                % N点时正频率刻度
X1_abs=abs(X1(1:N/2+1))*2/N;       % 信号幅值
 
L=2*N;                             % 补零后FFT长度
X2=fft(x,L);                       % 按L长进行FFT
freq2=(0:L/2)*fs/L;                % L点时频率刻度
X2_abs=abs(X2(1:L/2+1))*2/N;       % 信号幅值

N=512;                             % 信号长度
n=1:N;                             % 样点索引
t=(n-1)/fs;                        % 时间刻度
x=cos(2*pi*f1*t)+cos(2*pi*f2*t);   % 信号
X3=fft(x);  
freq3=(0:N/2)*fs/N;                % N点时正频率刻度
X3_abs=abs(X3(1:N/2+1))*2/N;       % 信号幅值
% 作图
subplot 311; plot(freq1,X1_abs,'k'); 
grid; ylim([0 1.2]);
xlabel('频率/Hz'); ylabel('幅值');
title('(a) 

请添加图片描述

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值