?? simul.m
字號:
%%%%% 循環(huán)譜檢測OFDM信號 %%%%%
clear;
clc;
%%% OFDM參數(shù) %%%
%數(shù)據(jù)長度的1/8必須大于等于循環(huán)譜采樣長度
%數(shù)據(jù)速率 6-BPSK, 12-QPSK
%%%%%%%%%%%%%%%%
TXVECTOR.LENGTH = 2000; % 數(shù)據(jù)長度
TXVECTOR.DATARATE = 6; % 數(shù)據(jù)速率
trst_rate = 20e6; % 信號發(fā)射速率,恒定
fc = 100e6;
%%% 循環(huán)譜檢測參數(shù) %%%
%檢測帶寬為 -fs/2 至 fs/2
%循環(huán)頻率分辨率為 fs/N
%頻率分辨率為 M*fs/N
%%%%%%%%%%%%%%%%%%%%%
fs = 300e6; % 采樣頻率
N = 2048; % 采樣長度
M = 20; % 平滑點數(shù)
%%% 信道參數(shù) %%%
SNR = 15; % 信噪比
%%% 隨機數(shù)據(jù)生成 %%%
PSDU = round(rand(1,8*TXVECTOR.LENGTH));
%%% OFDM信號生成 %%%
sig = transmitter(PSDU,TXVECTOR);
%%% 提升信號采樣率 %%%
s_n = ceil(fs/trst_rate); % 檢測采樣率近似為OFDM信號速率的整數(shù)倍
sig = sig(ones(s_n,1),:); % 碼元復(fù)制
sig = reshape(sig, 1, s_n*length(sig));
%%% 載波調(diào)制 %%%
sig_chnl = real(sig.*exp(j*2*pi*fc/fs*(0:length(sig)-1)));
%%% 高斯信道 %%%
sig_awgn = awgn(sig_chnl, SNR);
%sig_awgn=sig_chnl;
%sig_awgn = awgn(zeros(1,N), SNR);
%%% 循環(huán)譜檢測 %%%
cyclic_spectrum(sig_awgn, N, fs, M);
%cs_threshold(sig_awgn, N, fs, M, fc, trst_rate);
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -