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

📄 mrc.m

📁 PHS多天线基带调制与解调MATLAB程序
💻 M
字号:
% function for MRC SAPSPfunction [AirData, BitData] = MRC (AirParam)global Z;global alg;global sys;global env;   stride = 4 ;  lower = 20 ;  upper = lower + (128 * stride) ;  dZ = Z(lower:stride:upper,:) ;  RzzMRC = dZ'*dZ ;    RzzMRCDiag = diag(RzzMRC) ;  [maxi,index] = max(RzzMRCDiag) ;  wMRC = RzzMRC(:,index) ;   switch alg.FreqAlignEstMode    case 'normal'      lower = 1 + (20 * sys.over) ;      upper = lower + (80 * sys.over) ;      xZ = Z(lower:upper,:) ;      z = xZ * wMRC;              fid = fopen('S4C1T2F50_r.dat','wb');       fwrite(fid, real(z), 'float32');       fclose(fid);       fid = fopen('S4C1T2F50_i.dat','wb');       fwrite(fid, imag(z), 'float32');       fclose(fid);                  [AirData.TO, AirData.FO] = Freq_Time_Recovery(z, sys.over, sys.rate);     case 'perfect'      AirData.TO = AirParam.TO;      AirData.FO = AirParam.FO;    otherwise      error(sprintf('Don''t know %s mode of freq/align estimation\n', ...            alg.freqEstMode));  end    TO = mod(AirParam.TO + (1/16)*(AirData.TO - AirParam.TO),sys.over);    FO = AirParam.FO + (1/32)*(AirData.FO - AirParam.FO);%  Perform demodulation    cisoid_S = exp(-j*2*pi*[1:sys.nSym]*FO/sys.rate).' * ones(1,sys.nAnt);    dZ = Z(1+round(TO):sys.over:1+round(TO)+sys.over*(sys.nSym-1),:);     dZ = dZ .* cisoid_S ;    zMRC = dZ * wMRC ;    BitData.bits = phs_demod_mex(zMRC.',1,sys.tracking) ;%Extract bit payload    [BitData.S_uwe, BitData.S_crce, BitData.S_type, BitData.S_info] = ...    PayloadExtract_mex(BitData.bits,0,-1,-1,sys.keyS) ;    [BitData.I_uwe, BitData.I_crce, BitData.I_type, BitData.I_info] = ...    PayloadExtract_mex(BitData.bits,0,-1,-1,sys.keyI) ;% 6. Output parameters    AirData.w = wMRC;

⌨️ 快捷键说明

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