【MATLAB源码-第10期】基于matlab的pi/4DQPSK,π/4DQPSK的误码率BER理论和实际对比仿真。

操作环境:

MATLAB 2022a

1、算法描述

蓝牙是一种被广泛应用的无线通信标准,工作在2.4GHz-2.4835GHz频段范围,所用的调制方式有:GFSK,PI/4-DQPSK。北美第二代数字蜂窝移动通信系统D-AMPS和日本的JDC蜂窝系统均采用PI /4-DQPSK,欧洲的GSM系统采用GMSK。PI /4-DQPSK与GMSK等恒包络调制技术相比有更高的频谱利用率和抗衰落性能。

PI /4DQPSK调制器中,已调信号从相互偏移PI /4的两个星座图中选取下图给出了两个相互偏移PI /4的星座图和一个合并之后的星座图,图中的两点信号点之间的连线表示可能的相位跳变,可见PI /4DQPSK最大的相位跳变为±3π/4,每对连续的双比特其信号的最大相位至少有π/4的相位变化。

PI/4 -DQPSK是蓝牙采用的一种调制方式,相比于恒包络调制技术,他有着更高的频谱利用率和抗衰落性能。PI/4 -DQPSK相比于QPSK多了差分相位编译码模块,将QPSK的最大相位跳变180°降为135°。

PI/4 -DQPSK既能采用相干解调,也能采用非相干解调。

PI/4 -DQPSK由2个相差π/4的QPSK星座图交替产生。例如,如果连续输入“11 11 11”,则信号码元的相位为“45° 90° 45° 90°”

 PI/4 - DQPSK调制和解调系统框图

2、仿真结果演示

3、关键代码展示

%% 发射端
%随机产生传输信号
data =randi([0 1],1,data_len);
for i=1:data_len
    if data(i)==1
        data(i)=1;
    else
        data(i)=0;
    end
end
 
[I,Q]=pi4_dqpskmod(data);
 
%内插
zero=5;                                     % 采样率为25MHz
for i=1:zero*length(I)
    if rem(i,zero)==1
        Izero(i)=I(fix((i-1)/zero)+1);
        Qzero(i)=Q(fix((i-1)/zero)+1);
    else
        Izero(i)=0;
        Qzero(i)=0;
    end
end
 
%脉冲成形滤波器
NT =50;
N=2*zero*NT;
Fs=25e6;
rf=0.1;
psf=rcosfir(rf,NT,zero,Fs,'sqrt');
Ipulse= conv(Izero,psf);
Qpulse= conv(Qzero,psf);
 
%调制
for i=1:zero*length(I)+N
    t(i)=(i-1)/(Fc*zero);
    Imod(i)=Ipulse(i).*sqrt(2)*cos(2*pi*Fc*t(i));
    Qmod(i)=Qpulse(i).*(-sqrt(2)*sin(2*pi*Fc*t(i)));
end
sum=Imod+Qmod;
 
 
%% 接收端
%加噪声
for SNR=0:20
    sum1 = awgn(sum,SNR);
 
    %相乘器
    for i=1:zero*length(I)+N
        Idem(i)=sum1(i).*sqrt(2)*cos(2*pi*Fc*t(i));
        Qdem(i)=sum1(i).*(-sqrt(2)*sin(2*pi*Fc*t(i)));
    end
 
    %匹配滤波器
    mtf= rcosfir(rf,NT, zero,Fs,'sqrt');
    Imat = conv(Idem,mtf);
    Qmat = conv(Qdem,mtf);
 
    %抽取
    for i=1:zero*length(I)
        Isel(i)=Imat(i+N);
        Qsel(i)=Qmat(i+N);
    end
 
    %采样
    for i = 1:length(I)
        Isam(i)= Isel((i-1)*zero+1);
        Qsam(i)= Qsel((i-1)*zero+1);
    end
 
    %解码
    [data1]=pi4_dqpskdemod(Isam,Qsam);
    [num,ber(SNR+1)] = symerr(data1,data);%计算误码率
end

4、MATLAB 源码获取

点击下方链接获取:

【MATLAB源码-第10期】基于matlab的pi/4DQPSK,π/4DQPSK的误码率BER理论和实际对比仿真。_π/4-dqpsk调制信号误码率的理论公式-CSDN博客文章浏览阅读271次。【代码】【MATLAB源码-第10期】基于matlab的pi/4DQPSK,π/4DQPSK的误码率BER理论和实际对比仿真。_π/4-dqpsk调制信号误码率的理论公式https://blog.csdn.net/Koukesuki/article/details/132289372?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171091294416800211558062%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=171091294416800211558062&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-132289372-null-null.nonecase&utm_term=10%E6%9C%9F&spm=1018.2226.3001.4450

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-27 00:34:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-27 00:34:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-27 00:34:02       82 阅读
  4. Python语言-面向对象

    2024-03-27 00:34:02       91 阅读

热门阅读

  1. 机器学习代码

    2024-03-27 00:34:02       30 阅读
  2. Codeforces Round 936 (Div. 2)

    2024-03-27 00:34:02       31 阅读
  3. 甲方信息安全建设经验

    2024-03-27 00:34:02       34 阅读
  4. python蓝桥杯自行车停放

    2024-03-27 00:34:02       35 阅读
  5. 计算机系统基础 练习题 2

    2024-03-27 00:34:02       32 阅读
  6. 每日一题 518 零钱兑换Ⅱ

    2024-03-27 00:34:02       41 阅读