qam_16.m
来自「尽量不要让站长把时间都花费在为您修正说明上。压缩包解压时不能有密码。」· M 代码 · 共 57 行
M
57 行
function [d_symb]=QAM_16(numbits,d) %16_QAM调制
numbits=168;
% i=1:numbits;
% b(i)=randn(1,numbits)<0.5;
for n=1:4:(numbits-3)
if d(n)==0&d(n+1)==0&d(n+2)==0&d(n+3)==0
Re=1/sqrt(10);
Im=1/sqrt(10);
elseif d(n)==0&d(n+1)==0&d(n+2)==0&d(n+3)==1
Re=1/sqrt(10);
Im=3/sqrt(10);
elseif d(n)==0&d(n+1)==0&d(n+2)==1&d(n+3)==0
Re=3/sqrt(10);
Im=1/sqrt(10);
elseif d(n)==0&d(n+1)==0&d(n+2)==1&d(n+3)==1
Re=3/sqrt(10);
Im=3/sqrt(10);
elseif d(n)==0&d(n+1)==1&d(n+2)==0&d(n+3)==0
Re=1/sqrt(10);
Im=-1/sqrt(10);
elseif d(n)==0&d(n+1)==1&d(n+2)==0&d(n+3)==1
Re=1/sqrt(10);
Im=-3/sqrt(10);
elseif d(n)==0&d(n+1)==1&d(n+2)==1&d(n+3)==0
Re=3/sqrt(10);
Im=-1/sqrt(10);
elseif d(n)==0&d(n+1)==1&d(n+2)==1&d(n+3)==1
Re=3/sqrt(10);
Im=-3/sqrt(10);
elseif d(n)==1&d(n+1)==0&d(n+2)==0&d(n+3)==0
Re=-1/sqrt(10);
Im=1/sqrt(10);
elseif d(n)==1&d(n+1)==0&d(n+2)==0&d(n+3)==1
Re=-1/sqrt(10);
Im=3/sqrt(10);
elseif d(n)==1&d(n+1)==0&d(n+2)==1&d(n+3)==0
Re=-3/sqrt(10);
Im=1/sqrt(10);
elseif d(n)==1&d(n+1)==0&d(n+2)==1&d(n+3)==1
Re=-3/sqrt(10);
Im=3/sqrt(10);
elseif d(n)==1&d(n+1)==1&d(n+2)==0&d(n+3)==0
Re=-1/sqrt(10);
Im=-1/sqrt(10);
elseif d(n)==1&d(n+1)==1&d(n+2)==0&d(n+3)==1
Re=-1/sqrt(10);
Im=-3/sqrt(10);
elseif d(n)==1&d(n+1)==1&d(n+2)==1&d(n+3)==0
Re=-3/sqrt(10);
Im=-1/sqrt(10);
else d(n)==1&d(n+1)==1&d(n+2)==1&d(n+3)==1
Re=-3/sqrt(10);
Im=-3/sqrt(10);
end
d_symb((n+3)/4)=Re+j*Im;
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?