通信原理及系統系列2—— 基於卷積編碼的MSK通信系統設計

%% Generate The Random Sequence
InputData = randi([0 1],InputDataLength,1);

 

trellis = poly2trellis(9,{'1 + x + x^2 + x^3 + x^5 + x^7 + x^8', ...
        '1 + x^2 + x^3 + x^4 + x^8'}); % Define trellis.(2.1.8)
Con_Data = convenc(InputData,trellis);

%% MSK modulate
MskMod = comm.MSKModulator('BitInput', BitInput,...
                           'InitialPhaseOffset',InitialPhaseOffset,...
                           'SamplesPerSymbol',SamplesPerSymbol);

 

AirSignal = awgn(ModSignal,SNR(i),'measured');

 

經過維特比譯碼後的獲得的信息比特進行誤碼率計算:

DataHard = vitdec(DeModSignal,trellis,16,'cont','hard');
BitError = comm.ErrorRate('ReceiveDelay',24);

 

Matlab仿真代碼:MSK_Convolution.m

發佈了66 篇原創文章 · 獲贊 42 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章