用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;

效果图如下:

相关推荐
傻啦嘿哟几秒前
实战:用GraphQL接口高效采集数据
开发语言·驱动开发·php
JIngJaneIL几秒前
基于java + vue连锁门店管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
秃了也弱了。2 分钟前
python实现离线文字转语音:pyttsx3 库
开发语言·python
superman超哥2 分钟前
Rust 减少内存分配策略:性能优化的内存管理艺术
开发语言·后端·性能优化·rust·内存管理·内存分配策略
t198751285 分钟前
基于射线理论的水声信道仿真MATLAB程序
开发语言·matlab
UID96227 分钟前
[特殊字符] 无级变速传动(CVT)技术突破之道 | 易经×数学×工程的跨维度破解方案
算法·数学建模·开源
bu_shuo9 分钟前
MATLAB与Simulink介绍
开发语言·matlab·simulink
生信碱移13 分钟前
神经网络单细胞预后分析:这个方法直接把 TCGA 预后模型那一套迁移到单细胞与空转数据上了!竟然还能做模拟敲除与预后靶点筛选?!
人工智能·深度学习·神经网络·算法·机器学习·数据挖掘·数据分析
吃西瓜的年年14 分钟前
5.C语言流程控制语句
c语言·开发语言
萧曵 丶15 分钟前
Java 泛型详解
java·开发语言·泛型