QAM调制Matlab的BER结果

时间:2015-03-30 04:28:27

标签: matlab telecommunication modulation software-defined-radio

我试图通过16-QAM调制器,AWGN信道,解调器放置二进制矢量并最终测量BER。由于某种原因,即使我改变了矢量的长度,它也会一直给我BER = 0。 (我本来应该用Rayleigh频道来做,但我还没有。) 当我做同样但没有调制器时,我得到BER!=0这很好 我在这里失踪了什么? 这是我的代码:

Sig = randi([0 1],1,1E5);
SigMod=qammod(Sig,16);
y=awgn(SigMod,50);
SigDemod=qamdemod(y,16);
z=SigDemod>0;
BER = biterr(Sig,z) 

2 个答案:

答案 0 :(得分:0)

awgn的第二个输入是SNR ,以dB为单位。在您的示例中,您的SNR为50 dB,这会产生非常小的BER。

尝试降低SNR,例如降低到5 dB,您会发现一些误码。

答案 1 :(得分:0)

尝试在Matlab中看到这个例子:

SNR = 3; frameLen = 100;

x = randi([0 1],frameLen,1);

y = awgn(2 * x-1,SNR);

z = y> 0;

biterr(x,z)