function plot_fft(x,fs)
%x:待处理信号
%fs:采样率
%N:x的时域采样点数,即length(x),也是DFT的点数,N点DFT
N = length(x);
y = fft(x);
y = 20*log10(abs(y)*2/N);
f = (0:N-1)*fs/N;
figure,plot(f(1:N/2),y(1:N/2)),grid on,xlabel('f/Hz'),ylabel('|fft(x)|(dB)'),title('信号幅频特性');
end
%测试代码:
clc;
clear;
close all;
N = 1024;%采样点数
fs = 128;%采样频率
%% 时域波形
t=(0:N-1)/fs;
x = 100+3*sin(2*pi*20*t);
plot_fft(x,fs)