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

效果图如下:

相关推荐
Swift社区1 小时前
在 Swift 中实现字符串分割问题:以字典中的单词构造句子
开发语言·ios·swift
没头脑的ht1 小时前
Swift内存访问冲突
开发语言·ios·swift
没头脑的ht1 小时前
Swift闭包的本质
开发语言·ios·swift
wjs20241 小时前
Swift 数组
开发语言
stm 学习ing2 小时前
FPGA 第十讲 避免latch的产生
c语言·开发语言·单片机·嵌入式硬件·fpga开发·fpga
LNTON羚通3 小时前
摄像机视频分析软件下载LiteAIServer视频智能分析平台玩手机打电话检测算法技术的实现
算法·目标检测·音视频·监控·视频监控
湫ccc3 小时前
《Python基础》之字符串格式化输出
开发语言·python
mqiqe4 小时前
Python MySQL通过Binlog 获取变更记录 恢复数据
开发语言·python·mysql
AttackingLin4 小时前
2024强网杯--babyheap house of apple2解法
linux·开发语言·python