您现在的位置:首页 >> 通信 >> 内容

全数字OQPSK调制解调的基本算法,包括成形滤波器、NCO模型、载波恢复

时间:2022/12/19 18:42:31 点击:

  核心提示:A133包括程序操作录像+word论文...

1.完整项目描述和程序获取

>面包多安全交易平台:https://mbd.pub/o/bread/Y5qWm5hu

>如果链接失效,可以直接打开本站店铺搜索相关店铺:

点击店铺

>如果链接失效,程序调试报错或者项目合作可以加微信或者QQ联系。

2.部分仿真图预览


3.算法概述

       OQPSK也称为偏移四相相移键控(offset-QPSK),是QPSK的改进型。它与QPSK有同样的相位关系,也是把输入码流分成两路,然后进行正交调制。不同点在于它将同相和正交两支路的码流在时间上错开了半个码元周期。由于两支路码元半周期的偏移,每次只有一路可能发生极性翻转,不会发生两支路码元极性同时翻转的现象。因此,OQPSK信号相位只能跳变0°、±90°,不会出现180°的相位跳变。

4.部分源码

clc;

clear ;

len = 2000;               %设置数据长度

Freq_Data = 16.32e6;      %采样频率--转换抽样频率为:16.32MHZ

nsamp = 16;                %采样率

Freq_Sample = Freq_Data * nsamp;

%%

Freq_Carr = 8e6;          %载波频率

FC_NCO = 8e6;             %本地NCO频率

Ts = 1 / Freq_Sample;

T = nsamp * Ts;

alpha = 0.5;

delay = 2;

wc = Freq_Carr * 2 * pi;

wc_nco = FC_NCO * 2 * pi;

Delta_Freq = - Freq_Carr/100;     %频偏 

%得到OQPSK调制两路信号

 I_Data = ones(len,1);

 for i = 1 : 2 : len

     I_Data(i) = -1;

 end

 Q_Data = I_Data;

 I_D = u_rrcsend(I_Data,len,nsamp,0,Ts);

 Q_D = u_rrcsend(Q_Data,len,nsamp,0,Ts);

 carlen = length(I_D)/nsamp;

 %载波信号

 Delta_Phase=0;   %初始相位为0

 I_Carrier=cos((wc+Delta_Freq)/Freq_Sample*(1:carlen*nsamp));   %I路载波

 Q_Carrier=-sin((wc+Delta_Freq)/Freq_Sample*(1:carlen*nsamp));  %Q路载波

 %调制

 I_MOD = I_D.*I_Carrier;

 Q_MOD = Q_D.*Q_Carrier;

 %生成OQPSK信号

 send = I_MOD + Q_MOD;

A133

作者:我爱C编程 来源:我爱C编程
本站最新成功开发工程项目案例
相关评论
发表我的评论
  • 大名:
  • 内容:
本类固顶
  • 没有
  • FPGA/MATLAB商业/科研类项目合作(www.store718.com) © 2025 版权所有 All Rights Reserved.
  • Email:1480526168@qq.com 站长QQ: 1480526168