cylic_cumulate.m

来自「MPSK信号基于高阶循环谱估计载波频率matlab的代码」· M 代码 · 共 38 行

M
38
字号
%QPSK信号的四阶循环累量特征
%生成QPSK信号
clear all;
clc
M=16;
fs=7200;
fc=1800;
R=600;
N=200;
x=pqmod(M,N,2)';
scatterplot(x);
y=MPSKQAMmod(x,N,fs,R,fc);
y=awgn(y,15,'measured');
% y=real(y);
yft=abs(fft(y,4096));
figure(1)
plot(fs*(0:2047)/4096,yft(1:2048))
title('频谱');
%计算四阶矩
alpha=(fc-R/2):0.5:(fc+R/2);
S4=y.^4;
S2=y.^2;
m=size(y);
k=(1:m(2))';
n=0;
for i=1:(2*R+1)
    e1(:,i)=exp(-j*8*pi*alpha(i)*k/fs);
    su1(:,i)=S4'.*e1(:,i);
    C1(i)=mean(su1(:,i));
    e2(:,i)=exp(-j*4*pi*alpha(i)*k/fs);
    su2(:,i)=S2'.*e2(:,i);
    C2(i)=mean(su2(:,i));
    n=n+1
end
C=C1-3*(C2.^2);
figure(3)
plot(alpha,abs(C));
title('8PSK,SNR=20,fc=32000')

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?