FSK调制信号的频谱matlab仿真

目录

1. FSK信号的时域表示

2. FSK信号的频谱

3. FSK信号的功率谱密度

4. FSK调制与解调

5. FSK的应用

6. 仿真测试


       频移键控(Frequency Shift Keying,FSK)是一种数字调制方法,其中载波的频率根据数字信号的状态(0或1)进行切换。在二进制FSK(2-FSK)中,有两种频率:f1对应于数字“0”,f2对应于数字“1”。FSK由于其实现简单、抗干扰能力强,被广泛应用于各种通信系统中。

1. FSK信号的时域表示

       考虑一个简单的二进制FSK信号。当数字信号为0时,载波频率为f1;当数字信号为1时,载波频率为f2。对于一个给定的二进制序列,FSK信号可以表示为:

FSK的数学公式可以表示为:

s(t) = A sin(2πft + φ)

其中,s(t)表示在时刻t的信号值,A表示信号幅度,f表示频率,φ表示相位。对于FSK,频率f会根据二进制信息的变化而变化。例如,当二进制信息为0时,频率为f1;当二进制信息为1时,频率为f2。因此,FSK的数学公式也可以表示为:

s(t) = A sin(2πf1t + φ) 或 s(t) = A sin(2πf2t + φ)

与2ASK信号波形相比,2FSK信号可看作是两个不同载频的2ASK信号的叠加。

2. FSK信号的频谱

       FSK信号的频谱是其频率域表示,可以通过对时域信号进行傅里叶变换得到。对于单个正弦波信号 (e^{j2\pi f_1 t}),其频谱为在f1处的单一频率分量。但对于FSK信号,由于存在两个不同的频率f1和f2,其频谱会在f1和f2处各有一个主要分量。

2.1 连续时间FSK信号的频谱

       连续时间FSK信号的频谱由两部分组成:一个是频率为f1的分量,另一个是频率为f2的分量。每个分量都有与其相对应的带宽。带宽的大小取决于脉冲形状函数g(t)的带宽。

2.2 离散时间FSK信号的频谱

       对于离散时间的FSK信号,其频谱是周期性的,周期为采样频率。在每个周期内,频谱的结构与连续时间FSK信号的频谱相似,但在其他频率上也有分量。

3. FSK信号的功率谱密度

功率谱密度(Power Spectral Density,PSD)描述了信号功率在频域上的分布。对于FSK信号,其PSD会在f1和f2处出现峰值。PSD的具体形状取决于脉冲形状函数g(t)以及信号的调制指数。

4. FSK调制与解调

       在FSK调制中,数字信号通过改变载波的频率来传递信息。解调过程中,接收端通过检测接收到的信号的频率来判断原始的数字信息。常见的解调方法有鉴频法、差分检测法等。

5. FSK的应用

        由于其良好的抗噪声性能和相对简单的实现方式,FSK被广泛应用于各种通信系统中,如电话拨号、无线数据传输、遥控等。

6. 仿真测试

clc;
clear;
close all;
warning off;
addpath(genpath(pwd));
rng('default')
A=1;
fc=2;           %2Hz;
N_sample=8;
N=500;           %码元数
Ts=1;             %1Baud/s

dt=Ts/fc/N_sample;%波形采样间隔
T=Ts-dt;
t=0:dt:N*T;
Lt=length(t);

%产生二进制信源
d=sign(randn(1,N));
dd=sigexpand((d+1)/2,fc*N_sample);
gt=ones(1,fc*N_sample);%NRZ波形

figure(1)
subplot(221);%输入NRZ信号波形(单极性)
d_NRZ=conv(dd,gt);
plot(t,d_NRZ(1:length(t)));
axis([0 15 0 1.2]);ylabel('输入信号');   

subplot(222);%输入NRZ频谱
[f,d_NRZf]=T2F(t,d_NRZ(1:length(t)));
plot(f,10*log10(abs(d_NRZf).^2/T));  
axis([-2 2 -50 20]);ylabel('输入信号功率谱密度(dB/Hz)');

%2FSK
%s_2fsk=Acos(2*pi*fc*t+int(2*d_NRZ-1));
sd_2fsk=2*d_NRZ-1;

s_2fsk=A*cos(2*pi*fc*t+2*pi*sd_2fsk(1:length(t)).*t);
subplot(223)
plot(t,s_2fsk);
axis([0 15 -1.2 1.2]);xlabel('t');ylabel('FSK');
subplot(224)
[f,s_2fskf]=T2F(t,s_2fsk);
plot(f,10*log10(abs(s_2fskf).^2/T));
axis([-fc-4 fc+4 -50 20]);xlabel('f');ylabel('2FSK功率谱密度(dB/Hz)');

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

fpga和matlab

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

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

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

打赏作者

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

抵扣说明:

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

余额充值