• 大小: 0M
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-05-22
  • 语言: Matlab
  • 标签: 其他  

资源简介

Hamming.m

资源截图

代码片段和文件信息

BitSeq=randi([01][51200002]); %生成比特序列
SymbolSeq=bi2de(BitSeq‘left-msb‘);  %比特序列转化为符号序列
ModulatedSeq=qammod(SymbolSeq4);  %调制后的信号序列

%QPSK实际误码率:
error=zeros([111]);
for ebno=0:1:10
    AWGNChannel = comm.AWGNChannel(‘NoiseMethod‘‘Signal to noise ratio (Eb/No)‘‘EbNo‘ebno‘BitsPerSymbol‘2‘SignalPower‘mean(abs(ModulatedSeq).^2));
    outsignal=AWGNChannel(ModulatedSeq);
    recv=qamdemod(outsignal4);
    rec=de2bi(recv‘left-msb‘);
    [~error(ebno+1)]=biterr(recBitSeq);
end
semilogy(0:1:10error‘o-‘);
grid on 
axis([0101e-51])
hold on
xlabel(‘Eb/No‘);
ylabel(‘BER‘);
title(‘AWGN‘);
%%
% % 软判决+最小欧式距离译码
temp = [1 1 1
        1 0 1
        0 1 1
        1 1 0];

G = [eye(4) temp];
global base;
base = 0:15;
base = de2bi(base‘‘left-msb‘);
Y = mod(base*G2);
Y_1 = [bi2de(Y(:1:2)‘left-msb‘) bi2de(Y(:3:4)‘left-msb‘) bi2de(Y(:5:6)‘left-msb‘) Y(:7)];
global ModulatedY;
ModulatedY=qammod(Y_14);  %调制后的信号序列

BitSeq=randi([01][5120004]); %生成比特序列
BitSeq_Encode = mod(BitSeq*G2);
SymbolSeq = [bi2de(BitSeq_Encode(:1:2)‘left-msb‘) bi2de(BitSeq_Encode(:3:4)‘left-msb‘) bi2de(BitSeq_Encode(:5:6)‘left-msb‘) BitSeq_Encode(:7)];
ModulatedSeq=qammod(SymbolSeq4);  %调制后的信号序列

error=zeros([19]);
for ebno=0:1:8
    AWGNChannel = comm.AWGNChannel(‘NoiseMethod‘‘Signal to noise ratio (Eb/No)‘‘EbNo‘ebno‘BitsPerSymbol‘2‘SignalPo

评论

共有 条评论