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

📄 sq8qam_gray_demap.m

📁 一些关于调指和解调的小程序
💻 M
字号:
function out=sq8QAM_Gray_demap(input)

K=length(input);

d=1/sqrt(6);                  %%% The minimum distance between constellations is 2*d
x=d*[2,0,-2];             %%% coordinate matrix
y=d*[2,0,-2];

code=[0 0 0
      0 0 1
      0 1 1
      1 1 1 
      1 0 1
      1 0 0
      1 1 0
      0 1 0];
  
max=d*[2 2
       2 0
       2 -2
       0 -2
       -2 -2
       -2 0
       -2 2
       0 2];
       
       

for i=1:K
    temp(i,:)=[real(input(i)),imag(input(i))]; %%% 复数矩阵变成实数矩阵,便于处理
end



%%%------Minimun Euclidean distance demodulate-----------------
for i=1:K
    disx=abs(temp(i,1)-x);
    [d1,numx]=min(disx);
    tt_out(i,1)=x(numx);
    
    disy=abs(temp(i,2)-y);
    [d2,numy]=min(disy);
    tt_out(i,2)=y(numy);
    
    tt=find(max(:,1)==tt_out(i,1) & max(:,2)==tt_out(i,2));
    t_out(i,:)=code(tt,:);
   
end



for i=1:K
    for m=1:3
        out(3*(i-1)+m)=t_out(i,m);     %%% P/S transform, the out is a serial binary sequence
    end
end

clear K d x y temp disx disy tt_out t_out 
        
        

⌨️ 快捷键说明

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