Matlab环境中16-QAM的性能仿真Word格式.docx

上传人:b****3 文档编号:15404149 上传时间:2022-10-30 格式:DOCX 页数:3 大小:55.28KB
下载 相关 举报
Matlab环境中16-QAM的性能仿真Word格式.docx_第1页
第1页 / 共3页
Matlab环境中16-QAM的性能仿真Word格式.docx_第2页
第2页 / 共3页
Matlab环境中16-QAM的性能仿真Word格式.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

Matlab环境中16-QAM的性能仿真Word格式.docx

《Matlab环境中16-QAM的性能仿真Word格式.docx》由会员分享,可在线阅读,更多相关《Matlab环境中16-QAM的性能仿真Word格式.docx(3页珍藏版)》请在冰豆网上搜索。

Matlab环境中16-QAM的性能仿真Word格式.docx

比较

差错计数器

2.matlab程序:

clearall;

nsymbol=100000;

%每种信噪比下的发送符号数

M=16;

%16-QAM

graycode=[0132457612131514891110];

%格雷码编码规则

EsN0=5:

20;

%信噪比的范围

snr1=10.^(EsN0/10);

%将dB值转化成线性值

msg=randint(1,nsymbol,M);

%由0-15的整数值组成的均匀随机数

msg1=graycode(msg+1);

%将随机数映射成格雷码

msgmod=qammod(msg1,M);

%16-QAM调制

spow=norm(msgmod).^2/nsymbol;

%求出每个符号的平均功率

forindx=1:

length(EsN0)

sigma=sqrt(spow/(2*snr1(indx)));

%根据符号功率求出噪声功率

rx=msgmod+sigma*(randn(1,length(msgmod))+j*randn(1,length(msgmod)));

%混入高斯加性白噪声

y=qamdemod(rx,M);

%16-QAM的解调

decmsg=graycode(y+1);

%格雷码的逆映射

[err,ber(indx)]=biterr(msg,decmsg,log2(M));

%求误比特率

[err,ser(indx)]=symerr(msg,decmsg);

%求误符号率

End

p4=2*(1-1/sqrt(M)*qfunc(sqrt(3*snr1/(M-1))));

ser1=1-(1-p4).^2;

%理论误符号率

ber1=1/log2(M)*ser1;

%理论误比特率

semilogy(EsN0,ber,'

o'

EsN0,ser,'

*'

EsN0,ser1,EsN0,ber1,'

-k.'

);

title('

16-QAM载波调制信号在AWGN信道下的性能'

xlabel('

Es/N0'

ylabel('

误比特率和误符号率'

legend('

误比特率'

'

误符号率'

理论误符号率'

理论误比特率'

scatterplot(msgmod);

%画出调制之后的星座图

16-QAM调制之后的星座图'

同相分量'

正交分量'

scatterplot(rx);

%画出混入高斯加性白噪声后的星座图

16-QAM信号经过AWGN信道之后的星座图'

程序说明:

先将均匀随机数映射成格雷码,再用qammod函数实现16-QAM调制,已调信号由分别表示幅度和相位的两部分数据构成。

计算出每个符号的平均功率之后,再根据信噪比算出噪声的平均功率。

将噪声叠加到已调信号上,对幅度和相位两部分都叠加上噪声。

其后通过qamdemod函数解调,得到由格雷码表示的数据,再通过格雷码的逆映射还原出0-15组成的均匀随机数,再与没有调制的数据比较,得出误比特率和误符号率。

并画出调制之后的信号和叠加了噪声之后的已调信号的星座图。

3.仿真结果:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 外语学习 > 其它语言学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1