将随机信号作为信息码元,DPSK编码后经过成型滤波器整型,将信号波形进行相位调制,经过高斯白噪声(AWGN)信道。利用正交解调法解调出波形,对解调信号的进行抽样判决解调出相对码从而得到原始码。

echo off
close all
clear all
clc
%DPSK信号的产生
ps=1*10^3;     %码速率为1MHz
Ts=1/ps;       %码元周期
a=0.8;         %成形滤波器系数为0.8
B=(1+a)*ps;    %中频信号处理带宽
Fs=8*10^5;     %采样速率为8MHz
fc=2*10^4;     %载波频率为2MHz
N_length=1000; %仿真码元个数
h= 0.9;        %调频系数h/2*pi范围[-0.5,0.5]
N_sample=Fs*Ts;%N_sample=800
t=0:1/Fs:(N_length*Fs/ps-1)/Fs;%产生长度为N_length,频率为fs的时间序列
%生成信息码元
s=randint(N_length,1,2);%产生随机数据作为原始数据(0.1随机)
%生成相对码
ds=ones(1,N_length);
for i=2:N_length        %将绝对码变换为相对码 s=0时符号不变 s=1时符号翻转if s(i)==1 ds(i)=-ds(i-1);elseds(i)=ds(i-1);end
end
Ads=upsample(ds,Fs/ps);%对相对码数据以Fs频率采样
%整型成波形
%设计平方升余弦滤波器
n_T=[-2 2];
rate=N_sample;
T=1;
Shape_b = rcosfir(a,n_T,rate,T);
% figure(4);freqz(Shape_b)
rcos_Ads=filter(Shape_b,1,Ads);%对采样后的数据进行升余弦滤波;
mt=rcos_Ads;%作为调制信号
%PM调制
sfm=cos(2*pi*fc*t+h*mt); % 已调信号
N1=length(mt)-1;
figure(1)
subplot(411);
plot(t,mt);
title('DPSK信号成形滤波后时域');
subplot(412);
plot((-N1/2:N1/2)*Fs/N1,20*log10(abs(fftshift(fft(mt)))));
title('DPSK信号成形滤波后频域');
subplot(413);
plot(t,sfm);
title('调相信号时域');
subplot(414);
plot((-N1/2:N1/2)*Fs/N1,20*log10(abs(fftshift(fft(sfm)))));
title('调相信号频域');
%加高斯白噪声
SNR = 10;
sfm_SNR = awgn(sfm,SNR);
%带通滤波,去除AWGN
% w1=2*(fc-ps)/Fs;           %下截止频率
% w2=2*(fc+ps)/Fs;           %上截止频率
% numerator= fir1(60,[w1,w2]);%numerator是FIR滤波器的系数
% sfBandpass=filter(numerator,1,sfm_SNR );%经过滤波器
% figure(3);
% subplot(211);plot(t,sfBandpass);title('通过带通滤波器后的调制信号');axis([0,0.02,-1.5,1.5]);
% subplot(212);plot(t,sfm_SNR );title('带有噪声的调制信号'); axis([0,0.02,-1.5,1.5]);
%混频
ct=cos(2*pi*fc*t); %产生载频信号
st=sin(2*pi*fc*t); %生成和载波信号相差pi/2的信号
for i=1:length(sfm)
Ih(i)=sfBandpass(i)*2*(-ct(i));
Qh(i)=sfBandpass(i)*2*(st(i));
end
%滤波%降频
Flp=2*fc;
b=fir1(100,Flp/Fs,'low'); %设计滤波器
Qm=filter(b,1,Qh);
Im=filter(b,1,Ih);
% figure(6)
% subplot(411);plot(t,Qm);title('Q信号波形');
% subplot(412);plot(t,Im);title('I信号波形');
% subplot(413);plot((-N1/2:N1/2)*Fs/N1,20*log10(abs(fftshift(fft(Qm)))));title('Q信号波形频域');
% subplot(414);plot((-N1/2:N1/2)*Fs/N1,20*log10(abs(fftshift(fft(Im)))));title('I信号波形频域');
% figure(5)
% subplot(411);plot(t,Qh);title('Qh信号波形');
% subplot(412);plot(t,Ih);title('Ih信号波形');
% subplot(413);plot((-N1/2:N1/2)*Fs/N1,20*log10(abs(fftshift(fft(Qh)))));title('Qh信号波形频域');
% subplot(414);plot((-N1/2:N1/2)*Fs/N1,20*log10(abs(fftshift(fft(Ih)))));title('Ih信号波形频域');
%解调
Sn(1)=0;
for i=1:length(Qm)
y(i)=Qm(i)/Im(i);
Sn(i)=atan(y(i));
end
%低通滤波去除高频噪声
fm=ps;
Flp1=2*fm;
a=fir1(60,Flp1/Fs,'low'); %设计滤波器
% figure(4);
% stem(b);  %滤波器单位脉冲响应
Sn=filter(a,1,Sn);
%%相位解卷绕
%Sn=unwrap(Sn);
figure(11);
subplot(411);plot(t,Sn);title('解调信号波形'); %axis([0 2*10^(-3) -1 1 ]);
subplot(412);plot(t,mt);title('原始信号波形'); %axis([0 2*10^(-3) -5 5 ]);
subplot(413);plot((-N1/2:N1/2)*Fs/N1,20*log10(abs(fftshift(fft(Sn)))));title('解调信号频域'); %axis([-10000 10000 0 50000]);
subplot(414);plot((-N1/2:N1/2)*Fs/N1,20*log10(abs(fftshift(fft(mt)))));title('原始信号频域'); %axis([-10000 10000 0 500000]);
%对应波形
demod_lpf=Sn;
s_Ads=rectpulse(ds,Fs/ps);%对相对码重复Fs/ps倍采样,生成矩形波形信号,便于绘图比较
Len=10000;%设置时域波形显示的点数
x_t=1:Len;%产生长度为Len的时间序列
x_t=x_t;
delay=N_sample*3/2;%为便于观察,对解调后的基带波形超前显示delay个点。
%%绘制DPSK解调前后时域波形
% figure(10)
% plot(x_t,s_Ads(1:Len)/2,'-',x_t,demod_lpf(delay:Len+delay-1)/max(demod_lpf),'--');
% legend('相对码信号波形','DPSK解调后基带波形');xlabel('时间(us)');ylabel('幅度(V)');grid on;
%抽样判决,选取的是中间时刻
decide=ones(1,N_length);
for k=2:N_length  if(Sn((k)*N_sample)>0)
%     if(demod_lpf((k-1)+1)>0)  decide(k)=1;  else  decide(k)=0;  end
end  %还原绝对码
get_absolute_code =zeros(1,N_length);
for j = 2:N_length-1  get_absolute_code(j) = xor(decide(j),decide(j+1));
end
x=get_absolute_code;
y=s';
[number,ratio] = biterr(x,y)  %ratio误码率,number误码数

DPSK+PM调制解调相关推荐

  1. 通信原理与MATLAB(九):DPSK的调制解调

    目录 1.差分编解码原理 1.1差分编码原理 1.2差分解码原理 2.DPSK的调制原理 3.DPSK的相干解调原理 4.DPSK的代码(相干解调) 5.结果图(相干解调) 6.DPSK的差分解调原理 ...

  2. matlab ask fsk调制解调,Matlab的ASK-FSK--PSK程序仿真

    <Matlab的ASK-FSK--PSK程序仿真>由会员分享,可在线阅读,更多相关<Matlab的ASK-FSK--PSK程序仿真(12页珍藏版)>请在人人文库网上搜索. 1. ...

  3. PSK调制解调—DPSK

    文章目录 1. DPSK信号的调制原理 2. Costas环解调DPSK信号 3. DPSK调制解调的MATLAB仿真 3.1 源码 3.2 仿真结果 数字相位调制又叫相位键控(Phase Shift ...

  4. 【毕业设计/Matlab项目】调幅AM/调频FM/DPSK/FSK的调制解调matlab界面

    Date: 2022.5.22 文章目录 前言 1.仿真效果图 1.1.调幅AM 1.2.调频FM 1.3.2FSK 1.4.DPSK 2.核心matlab代码 前言 在大学毕业设计的时候,课题要求实 ...

  5. dpsk调制matlab,2dpsk信号调制解调的matlab设计和仿真

    2dpsk信号调制解调的matlab设计和仿真 2DPSK调制与解调系统的仿真 摘 要 设计了差分编码移相键控(2DPSK) 调制解调系统的工作流程图,并利用 Matlab 软件对该系统的动态进行了模 ...

  6. 基于multisim的fm调制解调_矢量调制分析

    本应用指南的第一部分介绍了矢量信号分析(VSA) 的初步知识,并讨论 了矢量信号分析测量的概念和操作理论.该部分还描述了矢量信号分析的频域,通过快速傅立叶变换(FFT) 分析实现的频谱分析测量能力.今 ...

  7. matlab仿真软件 高阶调制,高阶差分幅度相移键控调制解调系统及仿真

    摘要: 本文研究了高阶差分幅度相移键控调制解调(MDASPK)的算法.MDAPSK与具有高频谱利用率已实用化的QAM相比,MDAPSK是由差分幅度(DASK)和差分相移键控(DPSK)结合的一种调制方 ...

  8. matlab解调2fsk,2FSK调制解调系统的MATLAB实现

    第 34 卷 第 2 期 玉林师范学院学报(自然科学) Vol.34 No.2 2013 年 JOURNAL OF YULIN NORMAL UNIVERSITY (Natural Science) ...

  9. 4fsk调制matlab_数字调制解调技术的MATLAB与FPGA实现

    <数字调制解调技术的MATLAB与FPGA实现>包含2个版本.Xilinx/VHDL版的设计平台为ISE14.7/VHDL,配套开发板为CXD301:Altera/Verilog版的设计平 ...

  10. 【通信原理】实验五 基于Matlab的2ASK和2FSK调制解调

    目录 一.实验目的 二.实验器材 三.实验原理 1.二进制振幅键控(2ASK) 2.二进制频移键控(2FSK) 四.示例演示 1.2ASK的模拟调制程序如下: 2.2ASK的开关键控法,调制程序如下: ...

最新文章

  1. 【codeforces 812C】Sagheer and Nubian Market
  2. 这些深度学习术语,你了解多少?(下)
  3. data spring 指定时区_SpringBoot 统一时区的方案
  4. left join on 后and 和 where 的区别
  5. Bailian4129 变换的迷宫【BFS】
  6. Tomcat架构探究
  7. JAVA 中转义符的理解
  8. 保密检查usb痕迹清除_MD型卧式多级泵泵轴抱死故障原因分析和检查维修处理
  9. 【下载】跨越鸿沟:颠覆性产品营销圣经-杰弗里·摩尔电子书下载(pdf,epub,mobi,txt)
  10. 模型评估与选择(后篇)-代价曲线
  11. F - Firetrucks Are Red
  12. 教你把竖屏视频剪辑为横屏播放的方法
  13. 百度云盘 油猴下载助手脚本【绝对可用】
  14. 电厂计算机房消防,3 燃煤电厂建(构)筑物的火灾危险性分类、耐火等级及防火分区...
  15. MATLAB中cftool多曲线画图
  16. vs2015 无法启动程序 系统找不到指定的文件
  17. 蚂蚁课堂视频笔记思维导图-3期 一、并发编程专题
  18. angular之CanActivate守卫
  19. HTML5表单:工具箱中的可靠工具
  20. 抖音素材哪里收集_自媒体素材去哪里找,抖音素材去哪里找,短视频素材都在这里!(建议收藏)...

热门文章

  1. PS第一集 证件照换底色
  2. http(S)系列之(五):android之HttpURLConnection源码解析(1)
  3. PPT里快速插入上下角标
  4. Flink1.13 DataStream API - Event Time - Generating Watermarks
  5. 信息系统与信息化、信息系统开发方法、常规信息系统集成技术
  6. Centos7 固定 ip
  7. 计算机无法连接远程桌面怎么回事,笔者教你远程桌面无法连接怎么办
  8. 远程桌面 中断计算机连接不上,中断远程桌面连接解决方案
  9. 华三交换机配置access命令_H3C 交换机常用配置命令
  10. Java+AutoCAD-坐标系转换