QPSK调制解调目录

  • 一、仿真要求
  • 二、仿真方案详细设计
  • 三、仿真结果及结论
    • 1.仿真结果
    • 2.仿真结论
  • 四、主要仿真代码

一、仿真要求

画出QPSK信号产生的信息、I路、Q路信号对比图以及接收端解调的I路,Q 路,信息恢复的对比图。

二、仿真方案详细设计




三、仿真结果及结论

1.仿真结果






2.仿真结论

四、主要仿真代码

clear all;clc;
N=20;%比特数
T=1;%比特周期
fc=2;%载波频率
Fs=100;%抽样频率
bitstream=randi([0,1],1,N);%随机产生的比特数0、1
bitstream=2*bitstream-1;%单极性变为双极性(0到-1;1到1)
I=[];Q=[];
%奇数进I路,偶数进Q路
for i=1:Nif mod(i,2)~=0I=[I,bitstream(i)];elseQ=[Q,bitstream(i)];end
end
%采用绘图比较I、Q比特流
bit_data=[];
for i=1:Nbit_data=[bit_data,bitstream(i)*ones(1,T*Fs)];%在一个比特周期里面有T*Fs个1和采样点一模一样
end
I_data=[];Q_data=[];
for i=1:N/2%I路和Q路是原来比特周期的两倍,2Tb=Ts(码元周期),因此采样点个数为T*Fs*2I_data=[I_data,I(i)*ones(1,T*Fs*2)];Q_data=[Q_data,Q(i)*ones(1,T*Fs*2)];
end
%绘图
figure();
%时间轴
t=0:1/Fs:N*T-1/Fs;
subplot(3,1,1)
plot(t,bit_data);legend('Bitstream')%比特信息
subplot(3,1,2)
plot(t,I_data);legend('I Bitstream')%I路信息
subplot(3,1,3)
plot(t,Q_data);legend('Q Bitstream')%Q路信息
%载波信号
bit_t=0:1/Fs:2*T-1/Fs;%载波周期为2倍比特周期,定义时间轴
%定义I路和Q路的载波
I_carrier=[];Q_carrier=[];
for i=1:N/2I_carrier=[I_carrier,I(i)*cos(2*pi*fc*bit_t)];%I路载波信号Q_carrier=[Q_carrier,Q(i)*cos(2*pi*fc*bit_t+pi/2)];%Q路载波信号
end
%传输信号
QPSK_signal=I_carrier+Q_carrier;
%绘图
figure();%产生一个新图
subplot(3,1,1)
plot(t,I_carrier);legend('I signal')%I路信号
subplot(3,1,2)
plot(t,Q_carrier);legend('Q signal')%Q路信号
subplot(3,1,3)
plot(t,QPSK_signal);legend('QPSK signal')%I路、Q路和的信号
snr=1;%信躁比
%接收信号
QPSK_receive=awgn(QPSK_signal,snr);%awgn()添加噪声
%解调
for i=1:N/2I_output=QPSK_receive(1,(i-1)*length(bit_t)+1:i*length(bit_t)).*cos(2*pi*fc*bit_t);if sum(I_output)>0 %积分器求和,大于0为1,否则为-1I_recover(i)=1;elseI_recover(i)=-1;endQ_output=QPSK_receive(1,(i-1)*length(bit_t)+1:i*length(bit_t)).*cos(2*pi*fc*bit_t+ pi/2);if sum(Q_output)>0Q_recover(i)=1;elseQ_recover(i)=-1;end
end
%并/串变换
bit_recover=[];
for i=1:Nif mod(i,2)~=0bit_recover=[bit_recover,I_recover((i-1)/2+1)];%奇数取I路信息elsebit_recover=[bit_recover,Q_recover(i/2)];%偶数取Q路信息end
end
%适用绘图比较I、Q比特流
recover_data=[];
for i=1:Nrecover_data=[recover_data,bit_recover(i)*ones(1,T*Fs)];
end
I_recover_data=[];Q_recover_data=[];
for i=1:N/2I_recover_data=[I_recover_data,I_recover(i)*ones(1,T*Fs*2)];Q_recover_data=[Q_recover_data,Q_recover(i)*ones(1,T*Fs*2)];
end
%绘图
figure();
t=0:1/Fs:N*T-1/Fs;
subplot(3,1,1)
plot(t,recover_data);legend('Bitstream')%恢复的比特信息
subplot(3,1,2)
plot(t,I_recover_data);legend('I Bitstream')%恢复的I路信息
subplot(3,1,3)
plot(t,Q_recover_data);legend('Q Bitstream')%恢复的Q路信息
  • 本次的QPSK调制与解调实验过程就是这样,有不足欢迎评论,加油!

QPSK调制与解调(matlab,详细介绍仿真方案的设计、结果及结论、完整代码及注释)相关推荐

  1. QPSK调制与解调-MATLAB基带仿真

    QPSK调制与解调-MATLAB基带仿真 仿真步骤 产生一定长度的值为0或1的随机序列 s ( t ) s(t) s(t). 将 s ( t ) s(t) s(t)映射到QPSK星座图上的星座点. 产 ...

  2. 16QAM调制解调仿真(matlab,详细介绍仿真方案的设计、结果及结论、完整代码及注释)

    16QAM调制解调仿真目录 一.仿真要求 二.仿真方案详细设计 三.仿真结果及结论 四.仿真代码 一.仿真要求 1.用基带等效的方式仿真16-QAM在AWGN信道下的误码率和误比特率性能,并与理论值相 ...

  3. 16QAM调制与解调-MATLAB基带仿真

    16QAM调制与解调-MATLAB基带仿真 ---------------------------- 2020.05.14更新:---------------------------------- 有 ...

  4. MFSK调制与相干解调-MATLAB基带仿真

    MFSK调制与相干解调-MATLAB基带仿真 MFSK调制原理 发送信号形式:(等概) s 1 = ( E , 0 , - , 0 ) s_{1}=(\sqrt{\mathcal{E}}, 0, \l ...

  5. matlab dpsk,2DPSK调制与解调matlab(最新整理)

    <2DPSK调制与解调matlab(最新整理)>由会员分享,可在线阅读,更多相关<2DPSK调制与解调matlab(最新整理)(5页珍藏版)>请在人人文库网上搜索. 1.- 2 ...

  6. 2DPSK调制解调matlab,2DPSK调制与解调-matlab

    <2DPSK调制与解调-matlab>由会员分享,可在线阅读,更多相关<2DPSK调制与解调-matlab(4页珍藏版)>请在人人文库网上搜索. 1.- 2DPSK 调制与解调 ...

  7. FPGA 数字信号处理之 FSK 调制、解调的实现与仿真基于 verilog + ise + modelsim + matlab (保姆级)

    试验说明: 笔者复现FSK调制.解调的过程中,在网上查了很多很多相关文章,至少在本文之前,没发现能在参考一篇博文的情况下能完整复现实验结果的.总之,全乎的基本没有. 本笔记(文)的目标是让入门者或者说 ...

  8. 信号的调制与解调matlab仿真,基于MATLAB对信号调制与解调的仿真

    基于MATLAB对信号调制与解调的仿真 2.3 2PSK的基本原理和调制解调实现 数字相移键控,记作PSK(Phase shift-keying ),二进制相位键控记作2PSK. 2PSK就是根据基带 ...

  9. qpsk的映射过程_(完整版)QPSK调制原理及matlab程序实现

    QPSK 已调信号生成 一. QPSK 介绍 QPSK 是英文 Quadrature Phase Shift Keying 的缩写,意为正交相移键 控,是一种数字调制方式.其有抗干扰性强.误码性能好. ...

  10. matlab实现2dpsk调制与解调,2DPSK调制与解调 matlab

    %- 2DPSK 调制与解调 %--------------------------------------------------- %>>>>>>>> ...

最新文章

  1. poj1273(最大网络流问题模版)
  2. 深度学习 Caffe 初始化流程理解(数据流建立)
  3. 论文浅尝 | 基于深度强化学习的远程监督数据集的降噪
  4. 官宣丨中国移动云能力中心新增5项可信云认证,斩获2项大奖!
  5. ASP.NET中对STA COM组件的不正确调用产生的w3wp远程DoS
  6. SQL Server Junior Database Administrator方案相关的访谈问答
  7. 【渝粤教育】广东开放大学 标准的研制与编制 形成性考核 (35)
  8. 7. Swift 基于Xmpp和openfire实现一个简单的登录注册
  9. 寒江独钓——win内核编程读书笔记-1
  10. eclipse alt+/ 无效时,如何设置 《转》
  11. Unity读取内部、外部资源详解
  12. linux安装工具的过程
  13. Cesium:加载OSGB倾斜摄影三维模型
  14. 在多个浏览器中添加IDM插件
  15. 快速排名系统询火星推荐_seo排名工具推荐10火星:比较好用的SEO长尾关键词
  16. AD软件——设计总结(差分布线,蛇形布线)
  17. 88e1111 phy芯片在arm平台的配置及接口介绍
  18. 如何写互联网产品分析报告
  19. test\fmw\gtest\include\gtest/gtest-printers.h(714) : error C2977: “std::tuple”: 模板 参数太多
  20. 给中国学生的第三封信:成功…

热门文章

  1. window 2012 上安装 sql server 2005 出错的解决方案
  2. oracle 数据库官网下载流程
  3. Oracle数据库阶段版本
  4. 5006.推荐初学者几本CCNA教程和材料
  5. 网管员的任务与职责漫谈
  6. ListView 控件与 ImageList 控件
  7. php+分割文本文件,python实现:将文本文件分割成多个小文本文件(php也可实现)...
  8. 【聚沙成塔】将Mon Jun 01 2020 00:00:00 GMT+0800 (中国标准时间) 转换为 2020-06
  9. PyTorch Bert文本分类
  10. 3GP、MP4视频转换器下载