猝发信号的matlab实现

BPSK猝发信号及其短时傅里叶变换和能量谱密度:

猝发信号的matlab实现
猝发信号的matlab实现
猝发信号的matlab实现
代码实现:

close all;
clc;clear
%% 纯BPSK信号
snr = 15;
N = 512;
sig=anabpsk(N,50,0.25);
sig2=anabpsk(N,50,0.25);
y = awgn(sig,snr);
y2 = awgn(sig2,snr);

%% 噪声
figure
n01 = randn(1,1024);
n02 = randn(1,512);
n03 = randn(1,512);

%% 猝发BPAK信号
sig_contac = [n01 y’ n02 y2’ n03]’;
[S,F,T,P] = spectrogram(sig_contac(900:1100),kaiser(128,18),120,128,1E3,‘yaxis’);%选取 时间轴上900:1100的信号画能量谱密度作存在性检测
figure(1)
plot(F,S);
title(‘BPSK调制猝发信号短时傅里叶变换’)
axis([0 500 -50 50])
figure(2)
plot(F,P);

title(‘BPSK调制猝发信号能量谱密度’)
[tfr,t,f] = tfrstft(sig_contac,1:length(sig_contac),1024);
figure(3)
imagesc(t,f,abs(tfr));
title(‘BPSK调制猝发信号时频图’)