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

效果图如下:

相关推荐
NetX行者13 小时前
四语言 Hello World 背后:编译模型与运行时对比
开发语言
stsdddd13 小时前
YOLO算法建筑工地安全帽目标检测数据集16881张:标注核对笔记
算法·yolo·目标检测
CV爱数码14 小时前
论文精读|Learned Primal-Dual:把原始–对偶算法展开成网络
图像处理·算法·计算机视觉·ct·重建·断层扫描
Pin_Qing14 小时前
账单没超,请求先被拒了
大数据·开发语言·人工智能
2601_9628857214 小时前
如何用 Python 计算 VaR 和 CVaR(在险价值)?
开发语言·python
yuniko-n14 小时前
【算法】约瑟夫环问题
java·算法
郝亚军14 小时前
manifest 中 `sha256` 与 `signValue` 的作用
java·开发语言·数据结构
l1t14 小时前
测试DuckDB v2.1.0-alpha49002的bignum乘法
数据库·sql·算法·duckdb
譕痕14 小时前
stripe 实例
java·开发语言·stripe·checksession
Nil20815 小时前
LeetCode 283移动零
数据结构·算法·leetcode