基本原理
源代码
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% QPSK的星座图
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clc;
clear all;
close all;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 参数设置
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Qm=2; % 定义每符号的比特数
N=1e3; % 符号数
SNR=20; % 信噪比 dB
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 信源
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
d1=2*randi([0,1],1,N)-1; % 随机产生同向、正交两个方向的比特值
d2=2*randi([0,1],1,N)-1;
s=d1+1i*d2; % 得到复信号 QPSK信号
E=s*s';
% fprintf('信号的功率为%g\n',E);
scatterplot(s);grid on;
title('未加噪的QPSK信号星座图');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 信道(高斯白噪声)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
noise=randn(size(s))+1j*randn(size(s)); % 复噪声
E1=noise*noise';
% fprintf('噪声的功率为%g\n',E1);
y=sqrt(10^(SNR/10))*s+noise; %对复信号加复噪声
scatterplot(y);grid on;
title('加噪QPSK信号的星座图');
仿真结果
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/d6171d6940867acdb2c25987fc16a0f1.png)