📄 dpsk.m
字号:
N=8;
M=10;
fbconnection=[1 1 0 1 1 0 0 1];
mseq=m_sequence(fbconnection);
Seq=[mseq,1];
Ts = 2.5e-11; % time window (period):ps
num = 2^M; % number of points
dt = Ts/num; % timestep (dt)
% t = ((1:nt)')*dt;
% w = wspace(T,nt); % angular frequency vector
% vs = fftshift(w/(2*pi));
P0=1;
ntt=Ts/2;
m=1;
CC=0;
FWHM=0.5e-11;
T0=FWHM/2/sqrt(log(2));
Number=length(Seq)*num;
if Seq(1)==0
E(1)=0;
else
E(1)=pi;
end
for k=2:length(Seq)
if Seq(k)==0
E(k)=E(k-1);
else
E(k)=pi-E(k-1);
end
end
t=zeros(1,Number);
Es=zeros(1,Number);
Ess=zeros(1,Number);
time=zeros(1,Number);
for k=1:1:Number
t(k)=dt*(k-1);
Es(k)=sqrt(P0)*Seq(fix(t(k)/Ts)+1)*exp(-(1+i*CC)/2*((t(k)-(fix(t(k)/Ts)*Ts)-ntt)/T0)^(2*m));
end
% E=awgn(E,10,'measured');
for k=1:1:Number
t(k)=dt*(k-1);
Ess(k)=sqrt(P0)*exp(-(1+i*CC)/2*((t(k)-(fix(t(k)/Ts)*Ts)-ntt)/T0)^(2*m))*exp(i*E(fix(t(k)/Ts)+1));
end
Ess=awgn(Ess,10,'measured');
% Ess=Es;
figure
subplot(3,1,1)
% plot(Es)
plot(t(1:2^14),Es(1:2^14),'k') % 产生的高斯信号
title('2^8个高斯信号');
subplot(3,1,2)
plot(E(1:16),'k')
subplot(3,1,3)
plot(t(1:2^14),abs(Ess(1:2^14)),'k')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -