天天看点

猝发信号的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调制猝发信号时频图’)

继续阅读