资源简介
MATLAB ask psk fsk dpsk调制解调
代码片段和文件信息
%产生比特信号
t=0:0.01:7.99;
a=randint(18);
figure(1)
m=a(ceil(t+0.01));
plot(tm)
title(‘产生随机八比特二进制比特序列‘);
axis([08-1.51.5]);
%*************调制************%
fc=4000; %载波频率
fc1=8000;
fs=80000; %采样频率
ts=0:1/fs:(800-1)/fs;
ts1=0:1/fs:(100-1)/fs;
tzxh1=cos(2*pi*fc*ts);
tzxh2=cos(2*pi*fc1*ts);%2FSK调制情况下另一载波
%**************2ASK调制************%
ask=m.*tzxh1;
figure(2)
plot(task)
title(‘2ASK调制波形‘);
axis([08-1.51.5]);
%**************2FSK调制************%
fsk=cos(2*pi*(fc+fc*m).*ts);
figure(3)
plot(tfsk)
title(‘2FSK调制波形‘);
axis([08-1.51.5]);
%**************2PSK调制************%
psk=cos(2*pi*fc.*ts+pi*m);
figure(4)
plot(tpsk)
title(‘2PSK调制波形‘);
axis([08-1.51.5]);
%**************2DPSK调制************%
k=1;
for i=0:7
if m(1i*100+50)>0
dpsk(i*100+1:i*100+100)=cos(2*pi*fc.*ts1-pi/2*k);
k=-k;
else
dpsk(i*100+1:i*100+100)=cos(2*pi*fc.*ts1+pi/2*k);
end
end
figure(5)
plot(tdpsk)
title(‘2DPSK调制波形‘);
axis([08-1.51.5]);
%**************叠加噪声************%
e_2ask=awgn(ask10);
e_2fsk=awgn(fsk10);
e_2psk=awgn(psk10);
e_2dpsk=awgn(dpsk10);
figure(6)
subplot(221)
plot(te_2ask)
title(‘2ASK调制信号叠加噪声波形‘);
axis([08-1.51.5]);
subplot(222)
plot(te_2fsk)
title(‘2FSK调制信号叠加噪声波形‘);
axis([08-1.51.5]);
subplot(223)
plot(te_2psk)
title(‘2PSK调制信号叠加噪声波形‘);
axis([08-1.51.5]);
subplot(224)
plot(te_2dpsk)
title(‘2DPSK调制信号叠加噪声波形‘);
axis([08-1.51.5]);
%**************2ASK相干解调************%
[b11a11]=ellip(50.560[20006000]*2/80000);%带通椭圆滤波器设计
e_ask1=filter(b11a11e_2ask);%相乘器
e_ask2=2*e_ask1.*tzxh1*2;%低通滤波器
[b12a12]=ellip(50.5601000*2/80000); %低通滤波器设计
ask_xgjt=filter(b12a12e_ask2); %相干解调后,抽样判决前的结果
figure(7)
subplot(211)
plot(task_xgjt)
title(‘2ASK调制信号相干解调后通过低通滤波器,抽样判决前的信号‘);
axis([08-1.51.5]);
%**************2ASK非相干解调************%
e_ask1_f=abs(e_ask1);%包络检波
ask_fxgjt=filter(b12a12e_ask1_f); %抽样判决前的结果
subplot(212)
plot(task_xgjt)
title(‘2ASK调制信号非相干解调后通过低通滤波器,抽样判决前的信号‘);
axis([08-1.51.5]);
%**************2FSK相干解调************%
[b21a21]=ellip(50.560[20006000]*2/80000);%带通椭圆滤波器1设计
e_fsk11=filter(b21a21e_2fsk);
[b22a22]=ellip(50.560[600010000]*2/80000);%带通椭圆滤波器2设计
e_fsk12=filter(b22a22e_2fsk);
fsk1_m1=e_fsk11.*tzxh1*2; %相干解调
fsk1_m2=e_fsk12.*tzxh2*2;
fsk1_xgjt=filter(b12a12fsk1_m1); %相干解调后,抽样判决前的结果
fsk2_xgjt=filter(b12a12fsk1_m2);
figure(8)
subplot(211);
plot(tfsk1_xgjt);
title(‘2FSK调制信号相干解调后通过低通滤波器,抽样判决前的信号(发0时)‘);
subplot(212);
plot(tfsk2_xgjt);
title(‘2FSK调制信号相干解调后通过低通滤波器,抽样判决前的信号(发1时)‘);
%**************2FSK非相干解调************%
e_fsk1_f=abs(fsk1_m1); %包络检波
e_fsk2_f=abs(fsk1_m2);
fsk1_fxgjt=filter(b12a12e_fsk1_f); %相干解调后,抽样判决前的结果
fsk2_fxgjt=filter(b12a12e_fsk2_f);
figure(9)
subplot(211);
plot(tfsk1_fxgjt);
title(‘2FSK调制信号包络检波后通过低通滤波器,抽样判决前的信号(发0时)‘);
subplot(212);
plot(tfsk2_fxgjt);
title(‘
相关资源
- 有源电力滤波器matlab仿真模型
- MATLAB仿真6个用户的CDMA的同步通信
- MATLAB单双目标定工具箱
- 分数阶PID的matlab工具箱
- T-S模糊辨识与广义预测控制MATLAB源程
- BP算法的改进在Matlab的实现研究
- 人脸识别系统 现成的matlab代码
- svpwm的matlab仿真227144
- 基于DWT的数字水印算法的MatLab实现
- yalmip 工具包
- 量子聚类算法matlab实现
- harris特征点提取,matlab
- 两阶段单纯形法的Matlab实现
- 一种实时坏点检测和修复算法的matl
- 图像边界提取与处理matlab的实现
- 提升小波变换的matlab程序
- Matlab编写的DPIV速度场程序
- 基本鱼群算法 MATLAB函数
- 遗传算法之一元函数求最值matlab
- A*算法航迹规划
- 信道容量的仿真代码
- 瑞利衰落信道下无分集,2分集,4分集
- MATLAB RGB和YUV格式相互转化
- MATLAB FIR语音滤波
- 细化算法GUI实现 机器人路径规划
- 最小生成树的MATLAB程序
- 基于MATLAB对FSK信号调制与解调的仿真
- 基于遗传算法的机器人路径规划MATL
- 无向图中最大团问题的matlab代码
- UKF无迹卡尔曼滤波算法matlab代码
评论
共有 条评论