【Matlab】2FSK二进制频移键控波形生成

本文详细介绍了如何在Matlab环境中生成2FSK(二进制频移键控)波形的过程,包括设置二进制信息、码元速率、载波参数,以及通过基带信号和载波信号的乘积实现调制。实验结果展示了2FSK调制信号的生成步骤和最终波形。
摘要由CSDN通过智能技术生成

前言

一个通信原理课程中使用Matlab生成2FSK波形的实验笔记。

内容

  1. 设发送二进制信息为10011101,码元速率为1波特,载波 cos(wt),幅值为1,初始相位为0。
  2. 当载波频率分别为3Hz(对应“0”)和4Hz(对应“1”),利用matlab软件画出2FSK的波形。

原理

频移键控利用载波的频率变化传递数字信息。在2FSK中,载波的频率随二进制基带信号在 f1f2 两个频率点间变化。
表达式:
表达式
φnθn 不携带信息,通常令 φnθn 为零。所以2FSK信号为
2FSK
式中 s1(t)s2(t) 均为单极性脉冲序列,且当 s1(t) 为正电平脉冲时,s2(t) 为零电平,反之亦然。

程序源码

i=8; % 基带信号码元数
j=8000;
t=linspace(0,8,j); % 将[0,8]分成8000份
f1=4; % 载波1频率
f2=3; % 载波2频率
fm=i/10; % 基带信号频率
a=[1 0 0 1 1 1 0 1 0 0]; % 随机序列
 
%基带信号st1
st1=t;
for n=1:8
    if a(n)<1
        for m=j/i*(n-1)+1:j/i*n
            st1(m)=0;
        end
    else
        for m=j/i*(n-1)+1:j/i*n
            st1(m)=1;
        end
    end
end
 
figure(1);
subplot(411);
plot(t,st1);
title('基波信号st1');
axis([0,8,-2,2]);
 
%基波信号求反st2
st2=t;
for n=1:j
    if st1(n)==1
        st2(n)=0;
    else
        st2(n)=1;
    end
end
subplot(412);
plot(t,st2);
title('基波信号求反st2');
axis([0,8,-2,2]);
 
%载波信号
s1=cos(2*pi*f1*t);
s2=cos(2*pi*f2*t);
subplot(413),plot(s1);
title('载波信号s1');
subplot(414),plot(s2);
title('载波信号s2');
 
%调制信号
F1=st1.*s1;
F2=st2.*s2;
figure(2);
subplot(311);plot(t,F1);
title('F1=s1*st1');
subplot(312);plot(t,F2);
title('F2=s2*st2');
e_fsk=F1+F2;
subplot(313);plot(t,e_fsk);
title('调制信号2FSK');

结果分析

相应的2FSK信号调制过程波形如下图所示

结语

2FSK可视为两个不同载频的2ASK的叠加。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

翻过月亮.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值