Untitled

 avatar
unknown
plain_text
a year ago
914 B
3
Indexable
%% Equivalent Function for Modulation

function symbOut = MODULATION_MAPPER(data, mod_type)

  switch (mod_type)
    
      case 'QPSK'
        modulatedbits = zeros(floor(length(data)/2)-1,1);
        % write logic for QPSK symbol mapping , store the final symbols in 'symbOut'
        for it = 1:floor(length(data)/2)-1
            modulatedbits(it) = (0.707)*( (1-2*data(2*it)) + (1-2*data(2*it+1))*i );
        end
        symbOut = modulatedbits(:,1);
         
      case '64QAM'
        modulatedbits = zeros(floor(length(data)/6)-5,1);
       % write logic for 16 QAM symbol mapping , store the final symbols in 'symbOut'
        for it = 1:floor(length(data)/6)-5
            modulatedbits(it) = (0.146)*((1-2*data(6*it))*(4-(1-2*data(6*it+2))*(2-(1-2*data(6*it+4))))+(1-2*data(6*it+1))*(4-(1-2*data(6*it+3))*(2-(1-2*data(6*it+5))))*i);
        end
        symbOut = modulatedbits(:,1);
       
  end
end
Editor is loading...
Leave a Comment