资源简介

典型通信系统的仿真 增量调制 FSK PST AWGN 汉明码

资源截图

代码片段和文件信息

function st=fsktzjt(e)
%2FSK调制部分
fs=2000;   %采样频率
dt=1/fs;
f1=20;
f2=120;      %两个信号的频率
f3=220;
g1=e;
g2=ones(1200)‘;
g11=g2*g1;    %抽样 --首先生成1行200列的全1矩阵然后竖过来.然后与b1进行矩阵乘法
ga=g11(:)‘;            %将无数行无数列的一个矩阵b11转置成为1行N列
%g2a=~g1a;
g1a=zeros(15600);
g2a=zeros(15600);
g3a=zeros(15600);
for i=1:5600
if ga(i)==1
g1a(i)=1;
elseif ga(i)==0
g2a(i)=1;
else 
g3a(i)=1;
end
end

t=0:dt:2.8-dt;
t1=length(t);
fsk1=g1a.*cos(2*pi*f1*t);
fsk2=g2a.*cos(2*pi*f2*t);
fsk3=g3a.*cos(2*pi*f3*t);

fsk=fsk1+fsk2+fsk3;              %产生的信号
figure(5)
subplot(211);
plot(tfsk);
title(‘FSK信号(局部)‘)
ylabel(‘幅度‘)
%axis([88.0 89.6 -1.2 1.2]);
%sn=awgn(fsk10);           %通过高斯噪声信道
fd=0;%假设无多普勒频移
chan=rayleighchan(dtfd);%瑞利衰落信道
sn=filter(chanfsk);%信号通过瑞利衰落信道
subplot(212);
plot(tsn);     %噪声波形
%title(‘通过瑞利衰落信道以后的FSK信号(局部)‘)
title(‘通过高斯以后的FSK信号(局部)‘);
ylabel(‘幅度‘)
%xis([88.0 89.6 -1.5 1.5]);
%FSK解调         
b1=fir1(101[10/800 20/800]);
b2=fir1(101[90/800 110/800]);  %设置带通参数
b3=fir1(101[160/800 190/800]);
H1=filter(b11sn);
H2=filter(b21sn);          %经过带通滤波器后的信号
H3=filter(b31sn); 
H1=5*H1;%对衰落后的信号进行放大,便于图像观察,不放大也可以
H2=5*H2;
H3=5*H3;
figure(6)
subplot(311);
plot(tH1);
title(‘经过带通滤波器f1后的波形(局部)‘)
%axis([89.0 89.6 -1 1.2]);
ylabel(‘幅度‘)
xlabel(‘t‘)
subplot(312);
plot(tH2);
title(‘经过带通滤波器f2后的波形(局部)‘)
%axis([88.0 89.6 -1 1.2]);
ylabel(‘幅度‘)
xlabel(‘t‘)
subplot(313);
plot(tH3);
title(‘经过带通滤波器f3后的波形(局部)‘)
%axis([88.0 89.6 -1 1.2]);
ylabel(‘幅度‘)
xlabel(‘t‘)

%sw1=H1.*H1;
%sw2=H2.*H2; %经过相乘器
%sw3=H3.*H3;
sw1=(-1)*H1.*H1;
sw2=(-1)*H2.*H2; %经过相乘器
sw3=(-1)*H3.*H3;
figure(7)
subplot(311);
plot(tsw1);
title(‘经过相乘器h1后的波形‘)
%axis([88.0 89.6 -1 1.2]);
ylabel(‘幅度‘)
subplot(312);
plot(tsw2);
title(‘经过相乘器h2后的波形‘)
ylabel(‘幅度‘)
%axis([88.0 89.6 -1 1.2]);
xlabel(‘t‘)
subplot(313);
plot(tsw3);
title(‘经过相乘器h3后的波形‘)
%axis([88.0 89.6 -1 1.2]);
ylabel(‘幅度‘)

bn=fir1(10115/800);   %经过低通滤波器
figure(8)
st1=filter(bn1sw1);
st2=filter(bn1sw2);
st3=filter(bn1sw3);
figure(8)
subplot(311);
plot(tst1);
title(‘经过低通滤波器sw1后的波形‘)
%axis([88.0 89.6 -1 1.2]);
ylabel(‘幅度‘)
subplot(312);
plot(tst2);
title(‘经过低通滤波器sw2后的波形‘)
ylabel(‘幅度‘)
%axis([88.0 89.6 -1 1.2]);
xlabel(‘t‘)
subplot(313);
plot(tst3);
title(‘经过低通滤波器sw3后的波形‘)
ylabel(‘幅度‘)
%axis([88.0 89.6 -1 1.2]);
xlabel(‘t‘)

%判决
for i=1:length(t)
    if(st1(i)>=st2(i))&&(st1(i)>=st3(i))
        st(i)=1;
elseif (st2(i)>=st1(i))&&(st2(i)>=st3(i))
st(i)=0;
elseif (st3(i)>=st1(i))&&(st3(i)>=st2(i))
st(i)=-1;

    end
end
figure(9)
subplot(211);
plot(tst);
title(‘经过抽样判决器后的波形(局部)‘);
%axis([88.0 89.6 -1 1.2]);
grid on;
ylabel(‘幅度‘);
subplot(212);
plot(tst);
title(‘经过抽样判决器后的波形(局部)‘);
grid on;
ylabel(‘幅度‘);


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

     文件       1422  2013-01-10 17:23  hujun.m

     文件        750  2013-01-10 17:23  pst.m

     文件        383  2013-01-10 17:23  repst.m

     文件       3167  2013-01-12 14:47  fsktzjt.m

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

                 5722                    4


评论

共有 条评论