欢迎访问我的新博客主页哦

QAM调制解调的仿真实现

1、任务

1、使用matlab实现对QAM的调制解调仿真,分析系统可靠性

2、对原始信号进行4QAM和16QAM的调制,作出星座图

3、画出信噪比为18dB时,4QAM和16QAM的接收信号星座图

4、画出两种调制方式的眼图

5、解调接收信号,分别绘制4QAM和16QAM的误码率曲线图,并与理论值进行对比

6、完成实验报告

下面直接贴代码

M=input('几点QAM,请输入数字'); %M=4、16
k=log2(M);  % bitsPerSym = log2(m)
n=10000; %定义基本参数
x = randi([0,1], n*k,1); %生成随机二进制数比特流,序列长度为k倍数
x4 = reshape(x,k,length(x)/k);
xsym = bi2de(x4','left-msb'); % 将矩阵转化为相应的二进制数M进制数y = qammod(x,M,'bin','InputType','bit'); %QAM调制
yn = awgn(y,13);
scatterplot(y); % 画出16QAM信号的调制图
text(real(y)+0.1, imag(y),dec2bin(xsym)); % 在横real(y)+1,纵imag(y)处按列标注M进制xsym转二进制的数
axis([-5 5 -5 5]);
hold onh = scatterplot(yn, 1, 0,'b.'); % 经过信道后接收到的含白噪声的信号星座图
hold on;
scatterplot(y,1, 0,'r*', h); % 加入不含白噪声的信号星座图
title('接收信号星座图')
legend('含噪声接收信号','不含噪声信号');
axis([-5 5 -5 5]);
hold on;eyediagram(yn,2); % 眼图
yd = qamdemod(y,M,'bin','OutputType','bit'); %QAM解调%%%%% 基带信号和解调信号
figure
subplot(2,1,1);
stem(x(1:50),'filled'); % 画出相应的二进制比特流信号前五十位
title('基带二进制随机序列');
xlabel('比特序列'); ylabel('信号幅度');
subplot(2,1,2);
stem(yd(1:50));  % 画出相应的M进制信号序列
title('解调后的二进制序列')
xlabel('比特序列'); ylabel('信号幅度');%%%%% 实际与理论码错误率计算
SNR_in_dB=0:1:24; % AWGN信道噪声比
for j=1: length(SNR_in_dB)numoferr=0;y_add_noise = awgn(y, SNR_in_dB(j)); % 加入不同强度的高斯白噪声y_output= qamdemod(y_add_noise,M,'bin','OutputType','bit'); % 对已调信号进行解调for i=1: length(x)if(y_output(i)~=x(i))numoferr=numoferr+1;endendPe(j) = numoferr/length(x); %t通过错误码元数与总码元数之比求误码率,不同j是不同信噪比下的误码率
end%%% 理论误差值
SNR_in_dB=0:1:24;
berQ = berawgn(SNR_in_dB,'qam',M);%%% 合并画误码率曲线图
figure();
semilogy(SNR_in_dB,Pe,'red*-');
hold on;
semilogy(SNR_in_dB, berQ);
title('误码率比较');
legend('实际误码率','理论误码率');
hold on;
grid on;
xlim([0,15]);
xlabel('SNR/dB');
ylabel('Pe1')
disp(Pe);
disp(berQ);

运行结果



喜欢这篇博客的小伙伴们点个赞吧!

QAM调制解调的仿真实现相关推荐

  1. 基于matlab的正交振幅调制与解调,正交幅度调制(QAM)及解调Matlab仿真

    正交幅度调制(QAM)及解调Matlab仿真实验目的: 1.掌握QAM及解调原理与特性: 2.了解星座图的原理及用途. 实验内容: 1.编写MATLAB程序仿真QAM及相干解调: 2.观察I.Q两路基 ...

  2. 【水声通信】使用Bellohop模型产生水声信道,采用相干检测的方法进行PSK、QAM调制解调【matlab代码】

    源码 https://blog.csdn.net/qq_44394952/article/details/124490764?spm=1001.2014.3001.5502 1.实验目的 (1)学习并 ...

  3. FPGA学习笔记(七): DSB调制解调的仿真

    笔记七是DSB调制解调的仿真实现. DSB调制解调的实现原理:首先使用DDS产生低频正弦波信号作为调制信号,再用DDS产生高频信号作为载波信号,然后使用乘法器将两者相乘产生DSB信号,DSB信号与载波 ...

  4. FPGA学习笔记(八):ASK调制解调的仿真

    笔记八是ASK调制解调的仿真实现. ASK调制解调的实现原理:首先使用MATLAB产生存储基带波形的coe文件,再让ROM读取coe文件输出基带波形,然后DDS产生正弦波信号作为载波信号,接下来使用乘 ...

  5. matlab 8fsk,8FSK调制解调与仿真.ppt

    8FSK调制解调与仿真 八进制FSK内容 8FSK的调制与解调 8FSK的误码率分析 8FSK的matlab仿真 (一)多进制FSK调制解调系统 信道 接收滤波器 带通f1 检波器 带通f2 检波器 ...

  6. 【水声通信】使用Bellohop模型产生水声信道,采用相干检测的方法进行PSK、QAM调制解调【matlab源码】

    背景及原理讲解链接: https://blog.csdn.net/qq_44394952/article/details/124489788?spm=1001.2014.3001.5502. BELL ...

  7. ssb调制解调matlab仿真设计,单边带SSB调制解调的MATLAB仿真.doc

    单边带SSB调制解调的MATLAB仿真 预先设计的滤波器:LPF: HSSB: 1.调制程序function myfun()%采用滤波法产生SSB信号Fs=44100;%采样频率44100HZk1=i ...

  8. ssb调制解调matlab仿真设计,单边带SSB调制解调的MATLAB仿真

    单边带SSB调制解调的MATLAB仿真 预先设计的滤波器: LPF: HSSB: 1.调制程序 function myfun() %采用滤波法产生SSB信号 Fs=44100;%采样频率44100HZ ...

  9. FM调制解调Matlab仿真及FPGA设计

    宽带.窄带FM调制信号解调Matlab仿真及FPGA设计

  10. 数字基带调制解调matlab仿真,数字通信系统课程设计--基于MATLAB数字基带调制.doc...

    吉林工程技术师范学院 信息工程学院 第一章 绪论3 1.1通信的发展史简介3 1.2设计的目的及意义4 第二章 数字基带信号5 2.1数字基带调制原理5 2.2单极性不归零波形6 2.3双极性不归零波 ...

最新文章

  1. 大厂架构都开始做机房多活了
  2. Android selector
  3. .16-浅析webpack源码之编译后流程梳理
  4. Entity Framework中的Migrations
  5. 智能机器人领域有什么好书推荐的?
  6. 将文件转为stream流_NIO之文件IO
  7. oracle insert if语句怎么写,oracle存储过程的调用(insert 语句的存储过程)
  8. libzbar.a armv7
  9. reload vue 重新加载_vue面试,谈下router拦截
  10. 计算机名字需要加_PC吗,ecs计算机名字
  11. 涉及上千款,2021 Chrome插件性能影响分析报告新鲜出炉
  12. python资源分配算法_DRL based Resource Allocation Framework
  13. bzoj 1611: [Usaco2008 Feb]Meteor Shower流星雨(DP)
  14. 使用VLC把视频转换为一帧一帧的图片
  15. 无问东西:你曾是少年
  16. Linux虚拟声卡有吱吱声,解决Win7+8系统爆音有杂音吱吱声
  17. 大容量光传输技术进展与 400G C+L 系统研究
  18. weblogic下java程序占用cpu过高的问题排查
  19. Norton AntiVirus (诺顿杀毒)v9.0 简体中文企业版http://down.hotlife.cn/html/download/2006/5/30/1148978165.shtml
  20. 2021各显卡满载功耗天梯图 显卡能耗比天梯图

热门文章

  1. 【知识图谱】08KBQA问答系统(python+fuseki+jena)
  2. FastStone Capture7.0注册码
  3. 思科模拟器交换机路由器常用命令
  4. ModelAndView详解
  5. 【Android】ListView刷新、加载
  6. ppt保存为高分辨率图片(ppt2016)
  7. 用计算机键盘如何截屏,键盘上哪个键是截图 电脑键盘截图快捷键用法
  8. linux java解压文件怎么打开,java linux 解压zip文件怎么
  9. ibm7945服务器引导盘,IBM ServerGuide引导盘全系列|IBM引导盘
  10. Python单元测试报告框架PyTestReport