debitmap.m

来自「MIMO-OFDM系统仿真」· M 代码 · 共 42 行

M
42
字号

function DeMAPoutDATA = DeBitMap(DeMAPinDATA,N_BPSC)
% N_BPSC=1 --> BPSK
% N_BPSC=2 --> QPSK
% N_BPSC=4 --> 16-QAM
% N_BPSC=6 --> 64-QAM

temp=length(DeMAPinDATA);

switch N_BPSC
case 1
    for i=1:temp
        DeMAPoutDATA(i) = (sign(real(DeMAPinDATA(i)))+1)/2;
    end
case 2
    for i=1:temp
        DeMAPoutDATA(i*2-1) = (sign(real(DeMAPinDATA(i)))+1)/2;
        DeMAPoutDATA(i*2) = (sign(imag(DeMAPinDATA(i)))+1)/2;
    end
case 4
    DeMAPinDATA=sqrt(10)*DeMAPinDATA;
    for i=1:temp
        DeMAPoutDATA(i*N_BPSC-3) = (sign(real(DeMAPinDATA(i)))+1)/2;
        DeMAPoutDATA(i*N_BPSC-2) = abs(real(DeMAPinDATA(i)))<2;
        DeMAPoutDATA(i*N_BPSC-1) = (sign(imag(DeMAPinDATA(i)))+1)/2;
        DeMAPoutDATA(i*N_BPSC) = abs(imag(DeMAPinDATA(i)))<2;
    end
case 6
    DeMAPinDATA=sqrt(42)*DeMAPinDATA;
    for i=1:temp
        DeMAPoutDATA(i*6-5) = (sign(real(DeMAPinDATA(i)))+1)/2;
        DeMAPoutDATA(i*6-4) = abs(real(DeMAPinDATA(i)))<4;
        DeMAPoutDATA(i*6-3) = abs(abs(real(DeMAPinDATA(i)))-4)<2;
        DeMAPoutDATA(i*6-2) = (sign(imag(DeMAPinDATA(i)))+1)/2;
        DeMAPoutDATA(i*6-1) = abs(imag(DeMAPinDATA(i)))<4;
        DeMAPoutDATA(i*6)   = abs(abs(imag(DeMAPinDATA(i)))-4)<2;
    end
otherwise
    error('imagpart: No This DeBitMap Choice!!! ');
end

⌨️ 快捷键说明

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