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

📄 multipathchannel.m

📁 此程序是OFDM(正交频分复用)多径信道的程序
💻 M
字号:
function [RecieveData,ChannelData] = MultipathChannel(SerialSample,CurrentEbNo,NumOfSymbol,MappingScheme,ChannelData,fd)
%
   [a,b] = sefade(real(SerialSample),imag(SerialSample),[0,5,10,18,20],[0,5,10,20,25],[0,0,0,0,0],[6,7,6,7,6],[1000,2000,3000,4000,5000],5,length(SerialSample),0.2*1.0e-6,fd,0);
   RecieveData = a+b.*j;
   [a,b] = sefade(real(ChannelData),imag(ChannelData),[0,5,10,18,20],[0,5,10,20,25],[0,0,0,0,0],[6,7,6,7,6],[1000,2000,3000,4000,5000],5,length(SerialSample),0.2*1.0e-6,fd,0);
   ChannelData = a+b.*j;
   if strcmp(MappingScheme,'BPSK') == 1
   elseif strcmp(MappingScheme,'QAM') == 1
      CurrentEsNo = CurrentEbNo+10*log10(2);
   elseif strcmp(MappingScheme,'8PSK') == 1
      CurrentEsNo = CurrentEbNo+10*log10(3);       
   elseif strcmp(MappingScheme,'16QAM') == 1
      CurrentEsNo = CurrentEbNo+10*log10(4);       
   end
   
   RecieveData = awgn(RecieveData,CurrentEbNo,'measured');
   
   %加入10*log10(N)原因: paramenter snr in AWGN is Es/N0 , but we just give Eb/N0 in simulation. So if
%N bits are carried in one sample , we need calculate Es/N0 using Eb/n0.

⌨️ 快捷键说明

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