matlab的qammod函数_16QAM调制解调 for matlab

一、

M=16;

k=log2(M);

x=randint(30000,1);%产生二进制随机数

y=modulate(modem.qammod('M',16,'InputType','Bit'),x);%调制

EbNo=-5:1:10;%信噪比

s_b2d=bi2de(reshape(x,k,length(x)/k).','left-msb');%二进制变为十进制

for n=1:length(EbNo)

snr(n)=EbNo(n)+10*log10(k);%Ratio of symbol energy to noise power spectral density

ynoisy=awgn(y,snr(n),'measured');%加入高斯白噪声

z=demodulate(modem.qamdemod('M',16,'OutputType','Bit'),ynoisy);%解调

r_b2d=bi2de(reshape(z,k,length(z)/k).','left-msb');%二进制变为十进制

[sym(n),sym_rate(n)]=symerr(s_b2d,r_b2d);%计算仿真误码率,不是误比特率。

theo_sym_rate(n)=(3/2*erfc(sqrt(k*0.1*(10.^(EbNo(n)/10)))))*(1-3/8*erfc(sqrt(k*0.1*(10.^(EbNo(n)/10)))));

%《移动通信》P55的式子,已化简。

end

disp(sym);

disp(sym_rat

  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值