• 大小: 14KB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2021-08-11
  • 语言: Matlab
  • 标签: 2Fsk信号  仿真  

资源简介

使用MATLAB完成2Fsk信号的产生 加噪 调制 解调 接收 误码率分析等仿真。解调采用相干解调与非相干解调两种方式。

资源截图

代码片段和文件信息

%=============================1、构造载波,产生8个码元,生成已调信号========%
a=randsrc(18[0:1]);%产生8个随机的二进制数
l=linspace(02*pi50);%利用linspace函数创建数组,2pi长度取点50个模拟一个码元
f1=sin(4*l); %生成载波1
f2=sin(2*l);%生成载波2 
t=linspace(010*pi400); %定义时间轴length为10pi取点400个,代表8个码元的总取样点数
out=1:400;%规定已调信号length
b=1:400;% 规定基带信号length
w1=1:400;% 规定载波1length
w2=1:400;% 规定载波2length
%=================生成FSK信号===========% 
for i=1:8 
    if a(i)==0 
      for j=1:50 
          out(j+50*(i-1))=f2(j); %若码元为0则将载波2输出
      end 
    else 
      for j=1:50 
          out(j+50*(i-1))=f1(j); %若码元为1则将载波1输出
      end 
    end 
end 

for i=1:8
    for j=1:50 
        b(j+50*(i-1))=a(i); %b作为基带信号输出
        w1(j+50*(i-1))=f1(j); %w1作为载波1输出
         w2(j+50*(i-1))=f2(j); %w2作为载波2输出
    end 
end 
subplot(321)plot(tb)axis([0 10*pi -0.5 1.2]) xlabel(‘t‘)ylabel(‘幅度‘)title(‘基带信号‘);grid on;
subplot(322)plot(tw1)axis([0 10*pi -1.2 1.2]) xlabel(‘t‘)ylabel(‘幅度‘)title(‘载波1‘); grid on;
subplot(323)plot(tw2)axis([0 10*pi -1.2 1.2]) xlabel(‘t‘)ylabel(‘幅度‘)title(‘载波2‘); grid on;
subplot(324)plot(tout)axis([0 10*pi -1.2 1.2])xlabel(‘t‘)ylabel(‘幅度‘)title(‘FSK波形‘);grid on;
%axis设定XY轴起始值和终值


noise=awgn(out60‘measured‘) ;%产生噪音并加入到已调信号out中信噪比60
subplot(325);
plot(tnoise); 
ylabel(‘噪音+信号‘); 
xlabel(‘t‘);
axis([0 10*pi -1 1]);
grid on;

%=================3、信号解调============================================%
%=================信号通过BPF============================================%
Fs=400;%抽样频率400HZ
t=(1:400)*10*pi/Fs;%时轴步进
[b1a1]=ellip(40.140[2535]*2/Fs);%设计IIR带通滤波器1
[b2a2]=ellip(40.140[1020]*2/Fs);%设计IIR带通滤波器2
sf1=filter(b1a1noise);%信号通过该滤波器1
sf2=filter(b2a2noise);%信号通过该滤波器2
figure(2);%画另一张图,表示不同载波的两路信号的解调过程
subplot(321); 
plot(tsf1);%画出信号通过该BPF1的波形
xlabel(‘t‘); ylabel(‘幅度‘);
title(‘f1通过BPF后的波形‘); 
axis([0 10*pi -1.2 1.2]);
grid on;

subplot(322); 
plot(tsf2);%画出信号通过BPF2的波形
xlabel(‘t‘); ylabel(‘幅度‘);
title(‘f2通过BPF后的波形‘); 
axis([0 10*pi -1.2 1.2]);
grid on;

f1=[f1 f1 f1 f1 f1 f1 f1 f1];
f2=[f2 f2 f2 f2 f2 f2 f2 f2];
s1=sf1.*f1;
s2=sf2.*f2;
subplot(323); 
plot(ts1);%画出信号通过该带通滤波器的波形
xlabel(‘t‘); ylabel(‘通过相乘器后波形‘); 
axis([0 10*pi -1 1]);
grid on;

subplot(324); 
plot(ts2);%画出信号通过该带通滤波器的波形
xlabel(‘t‘); ylabel(‘通过相乘器后波形‘); 
axis([0 10*pi -1 1]);
grid on;

%=====================信号通过LPF================%
Fs=400;%抽样频率400HZ
t=(1:400)*10*pi/Fs;%时轴步进
[b1a1]=ellip(40.140[25]*2/Fs);%设计IIR-LPF
[b2a2]=ellip(40.140[10]*2/Fs);%设计IIR-LPF
sf1=filter(b1a1s1);%信号通过该滤波器
sf2=filter(b2a2s2);%信号通过该滤波器
figure(2);
subplot(325); 
plot(tsf1);%画出信号通过该低通滤波器的波形
xlabel(‘t‘); ylabel(‘幅度‘);
title(‘sf1通过LPF后的波形‘); 
axis([0 10*pi -1 1]);
grid on;
figure(2);
subplot(326); 
plot(tsf2);%画出信号通过该低通滤波器的波形
xlabel(‘t‘); ylabel(‘幅度‘);
title(‘sf2通过LPF后的波形‘); 
axis([0 10*pi -1 1]);
grid on;

%=======================3、抽样判决==================================%
fin=1:400;
for i=1:8
  for j=1:50
     if

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2291  2010-07-15 00:07  FSK\非相干\fskfxg.asv

     文件       2237  2010-07-15 15:27  FSK\非相干\fskfxg.m

     文件       3960  2010-07-11 21:58  FSK\非相干\FSKYL.m

     文件       3865  2010-07-11 16:50  FSK\非相干\FSKYL.asv

     文件       1654  2010-07-15 08:16  FSK\非相干\fskfxgwml.m

     文件       4096  2010-07-15 09:29  FSK\非相干\FSKFXG2.m

     文件       3764  2010-07-11 17:00  FSK\相干\FSKX.m

     文件       2705  2010-07-15 15:13  FSK\相干\fskxg.m

     文件       2996  2010-07-06 15:03  FSK\相干\FSKX.asv

     文件       1568  2010-07-13 19:48  FSK\相干\fskxgwml.asv

     文件       1895  2010-07-15 08:17  FSK\相干\fskxgwml.m

     文件       2613  2010-07-15 15:10  FSK\相干\fskxg.asv

     目录          0  2010-07-14 16:27  FSK\非相干

     目录          0  2010-07-14 16:27  FSK\相干

     目录          0  2010-07-14 11:00  FSK

----------- ---------  ---------- -----  ----

                33644                    15


评论

共有 条评论