用MATLAB 画一个64QAM的星座图

由于QAM采用幅度和相位二维调制,其频谱效率大大提高,而且不同点的欧式距离也要大于调幅AM调制方式,QAM也是LTE和5G NR首选的调制方式,本期教大家画一个64QAM的星座图。

如下:

首先产生一个64QAM的调制数据,幅度归一化

SymbolAlphabet = [

complex( 3, 3)

complex( 3, 1)

complex( 1, 3)

complex( 1, 1)

complex( 3, 5)

complex( 3, 7)

complex( 1, 5)

complex( 1, 7)

complex( 5, 3)

complex( 5, 1)

complex( 7, 3)

complex( 7, 1)

complex( 5, 5)

complex( 5, 7)

complex( 7, 5)

complex( 7, 7) % symbol 0-15

complex( 3, -3)

complex( 3, -1)

complex( 1, -3)

complex( 1, -1)

complex( 3, -5)

complex( 3, -7)

complex( 1, -5)

complex( 1, -7)

complex( 5, -3)

complex( 5, -1)

complex( 7, -3)

complex( 7, -1)

complex( 5, -5)

complex( 5, -7)

complex( 7, -5)

complex( 7, -7) % symbol 16-31

complex(-3, 3)

complex(-3, 1)

complex(-1, 3)

complex(-1, 1)

complex(-3, 5)

complex(-3, 7)

complex(-1, 5)

complex(-1, 7)

complex(-5, 3)

complex(-5, 1)

complex(-7, 3)

complex(-7, 1)

complex(-5, 5)

complex(-5, 7)

complex(-7, 5)

complex(-7, 7) % symbol 32-47

complex(-3, -3)

complex(-3, -1)

complex(-1, -3)

complex(-1, -1)

complex(-3, -5)

complex(-3, -7)

complex(-1, -5)

complex(-1, -7)

complex(-5, -3)

complex(-5, -1)

complex(-7, -3)

complex(-7, -1)

complex(-5, -5)

complex(-5, -7)

complex(-7, -5)

complex(-7, -7) ] / sqrt(42); % symbol 48-63

%调用figure准备画一个图

figure;

给数据添加AWGN白噪声,SNR=33db

snrDb = 33;

% 每个星座点画100次相同SNR下的图

length = 100;

for n=1:length

% 调用awgn库函数为数据添加噪声

SymbolAlphabetTemp = awgn(SymbolAlphabet, snrDb);

%取数据的实部和虚部

x_r = real(SymbolAlphabetTemp);

x_i = imag(SymbolAlphabetTemp);

%画图

h = plot(x_r,x_i,'.');

%为图添加颜色

set(h, 'Color', 0, 0.2,(n/length));

hold on;

End

%添加标题和网格

title('64QAM 星座图');

grid on;

效果图如下:

相关推荐
小灰灰搞电子18 分钟前
Rust Attribute(属性标记)完整整理
开发语言·后端·rust
地平线开发者23 分钟前
模型部署|征程6 量化路线怎么选:PTQ 还是 QAT?
神经网络·算法·机器学习
不会就选b33 分钟前
算法日常・每日刷题--<贪心>12
算法
tedcloud12335 分钟前
God‘s Eye View 怎么搭建?在云服务器上部署一个实时 3D 地球可视化平台
linux·服务器·开发语言·后端·rust
Tairitsu_H1 小时前
[C++] C++11 Lambda与包装器深度解析
开发语言·c++·c++11·lambda·包装器
傲世仙尊1 小时前
从磁盘硬件到Ext文件系统-Linux磁盘级文件系统学习笔记
linux·运维·服务器·开发语言·c++
小羊没烦恼!1 小时前
Memory 记忆设计讨论:为什么 Agent Memory 不能只靠向量数据库?
java·开发语言·windows·算法·c#
黑马程序员毕设2 小时前
基于微信小程序的节目活动报名与管理系统设计与实现
java·开发语言·spring boot·后端·电脑
sunshine22 girl2 小时前
Java学习 java原理
java·开发语言·学习
ysu_03142 小时前
08-二叉树遍历:四种方式详解
c语言·数据结构·算法·leetcode