⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qam16.m

📁 OFDm模型里面的调制和解调相关源程序代码
💻 M
字号:
function [y]=qam16(x)
%输入的是01序列,输出的是经过16QAM调制后的信号
%这个程序就是把输入的基本二进制符号映射到各个点上
%映射图表见《无线通信原理》P327
%0000、0001、0010、0011映射到第一象限:0000->(1,1) 0001->(1,3) 0010->(3,1) 0011->(3,3)
%1000、1001、1010、1011映射到第二象限:1000->(-1,1) 1001->(-1,3) 1010->(-3,1) 1011->(-3,3)
%1100、1101、1110、1111映射到第三象限:1100->(-1,-1) 1101->(-1,-3) 1110->(-3-1) 1111->(-3,-3)
%0100、0101、0110、0111映射到第三象限:0100->(1,-1) 0101->(1,-3) 0110->(3,-1) 0111->(3,-3)
%对应位置参数矩阵:[(-3,3)  (-1,3)   |   (1,3)  (3,3)
%                   (-3,1)  (-1,1)   |   (1,1)  (3,1)
%                   -----------------
%                   (-3,-1) (-1,-1)  |   (1,-1) (3,-1) 
%                   (-3,-3) (-1,-3)  |   (1,-3) (3,-3)] 
%分别对应坐标上的16个星座图
%输入参数:x   为经过信源调制后信息bit符号
%输出参数:y   为经过信道编码(16qam)调制后的符号

%王东洋
%2005-10-19
%得到星座图映射矩阵
constel_diagram=[sqrt(2)/2+j*sqrt(2)/2, 1.5*sqrt(2)+j*sqrt(2)/2, sqrt(2)/2+j*1.5*sqrt(2), 1.5*sqrt(2)+j*1.5*sqrt(2);%第一象限
                -sqrt(2)/2+j*sqrt(2)/2,-1.5*sqrt(2)+j*sqrt(2)/2,-sqrt(2)/2+j*1.5*sqrt(2),-1.5*sqrt(2)+j*1.5*sqrt(2);%第二象限
                 sqrt(2)/2-j*sqrt(2)/2, 1.5*sqrt(2)-j*sqrt(2)/2, sqrt(2)/2-j*1.5*sqrt(2), 1.5*sqrt(2)-j*1.5*sqrt(2);%第四象限
                -sqrt(2)/2-j*sqrt(2)/2,-1.5*sqrt(2)-j*sqrt(2)/2,-sqrt(2)/2-j*1.5*sqrt(2),-1.5*sqrt(2)-j*1.5*sqrt(2)]/sqrt(5);%第三象限
len=length(x)/4;
y=zeros(1,len);
%对输入bit流进行星座映射,得到16qam调制符号
for m=1:len
    temp1=x(4*(m-1)+1)+x(4*(m-1)+2)*2;
    temp2=x(4*(m-1)+3)+x(4*(m-1)+4)*2;
    y(m)=constel_diagram(temp1+1,temp2+1);
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -