• 大小: 21.59MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-07-07
  • 语言: Matlab
  • 标签: OFDM  MATLAB  移动通信  

资源简介

本资源包含了基于 MATLAB 的 OFDM 仿真实验代码,内容全面且包含注释,经查找对比要比网上的大部分代码资源要好。同时,还包含了经过注释的课件,有助于理解。

资源截图

代码片段和文件信息

clc;
fs = 20e6;
gi = 1/4;                
fftlen = 64;
gilen = gi*fftlen;          


ShortTrain = sqrt(13/6) * [0 0 1+j 0 0 0 -1-j 0 0 0 1+j 0 0 0 -1-j ...
                       0 0 0 -1-j 0 0 0 1+j 0 0 0 0 0 0 -1-j 0 0 0 ...
                       -1-j 0 0 0 1+j 0 0 0 1+j 0 0 0 1+j 0 0 0 1+j 0 0].‘;

short_demap = zeros(64 1);
short_demap([7:32 34:59]:) = ShortTrain;
short_demap([33:64 1:32]:) = short_demap;  
% 将频域的短训练序列转化到时域
ShortTrain=sqrt(64)*ifft(sqrt(64/52)*short_demap);  
ShortTrain =ShortTrain(1:16);
transmit=[ShortTrain;ShortTrain;ShortTrain;ShortTrain;ShortTrain;
          ShortTrain;ShortTrain;ShortTrain;ShortTrain;ShortTrain];

phase=zeros(11);
mse=zeros(11);
error = zeros(1500);
snr = 0:1:20;
for snr_idx = 1:length(snr)
    for n = 1:500  
        len = length(transmit);   % 计算传输信号长度
        noise =sqrt(1/(10^(snr(snr_idx)/10))/2)*( randn(len1)+j*randn(len1));
        % 加噪声
        transmit1 = transmit + noise; 
        % 加频偏 [0:total_length-1]/fs=nTs    ▲f=0.2*fs/fftlen
        cfo = 0.2*fs/fftlen/fs*[0:len-1];
        phase_shift = exp(j*2*pi*cfo).‘;
        transmit2 = transmit1.*phase_shift;   % 将频偏加到传输的信号上

        LTE = 16;  %长度为16的窗口
        phase=0;
        
        for i=1:(len-LTE)     
            %每一个数据与d个数据后的数据共轭相乘,求总和
            phase=phase+transmit2(i).*conj(transmit2(i+LTE));
        end 
        
        %求估计出的频偏
        cfo_est = -angle(phase) / (2*LTE*pi/fs);  
        %求频偏估计误差
        error(n) = (cfo_est - (0.2*fs/fftlen))/(0.2*fs/fftlen); 
    end
 
mse(snr_idx) = mean(abs(error).^2);
end

semilogy(snrmse‘-o‘);
xlabel(‘SNR/dB‘);
ylabel(‘MSE‘);
grid on;

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1762  2019-05-29 14:49  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\aaa666666666.m

     文件       2305  2019-05-29 15:24  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\aaa7777777.m

     文件       4688  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\BasicOFDM.m

     文件       3463  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\BasicOFDM2_Channel.m

     文件       1989  2019-04-09 23:27  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 1\BasicOFDM.m

     文件       2830  2019-04-08 00:26  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 1\BasicOFDM_ChannelCoding.m

     文件       2919  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 1\BasicOFDM_Interleave.m

     文件        534  2019-04-07 22:15  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 1\ChannelResponse.m

     文件        847  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 1\rx_deinterleave.m

     文件        763  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 1\test_coding.m

     文件        279  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 1\test_Interleave.m

     文件        569  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 1\test_MQAM.m

     文件       1002  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 1\tx_interleaver.m

     文件        342  2019-05-18 15:40  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 2\filter_test.m

     文件       5091  2019-05-28 21:58  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 2\packet_detect_modified.m

     文件        388  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 2\short_train_gen.m

     文件       2263  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 2\test_mapping.m

     文件       4245  2019-05-18 17:09  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 2\test_packet_detect.m

     文件       1626  2019-05-05 22:14  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 2\test_preamble.m

     文件        381  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 2\tx_freqd_to_timed.m

     文件        897  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 3\test_cfo_freq.m

     文件        420  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 3\test_cfo_time.m

     文件       2330  2019-05-22 14:41  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 3\test_fine_time_sync.m

     文件       3763  2019-05-28 21:54  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 3\test_freq_sync.m

     文件        381  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 3\tx_freqd_to_timed.m

     文件       3656  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 4\test_channel_equ.m

     文件       3399  2019-05-28 21:58  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 4\test_channel_est.m

     文件        381  2018-06-01 15:01  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\Experiment 4\tx_freqd_to_timed.m

     文件        548  2019-05-29 14:22  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\finetimesync.m

     文件        521  2019-05-29 14:26  基于MATLAB的OFMD仿真实验(课件+详细代码)\代码\frequencysync.m

............此处省略30个文件信息

评论

共有 条评论