简单生成一个FSK信号
clc
clear all
close all
%绘制2FSK信号
% 设定参数
fs = 10000; % 采样频率
Tb = 0.01; % 每比特持续时间
fc0 = 500; % 低频
fc1 = 1500; % 高频
nBits = 10; % 二进制数据比特数
% 生成随机二进制数据
% 产生十个随机数
a=rand(1,nBits)
%根据随机数产生二进制信号
data=round(a)
figure(1)
subplot(2,1,1);
stairs(data);
axis([1 10 -1.5 1.5]);
title('基带信号');
grid on;
% 调制2FSK信号
t = 0:1/fs:10*Tb - 1/fs; % 总时间
for i = 1:10
% 在每比特时间内,合成波形
t_bit = (i-1)*Tb : 1/fs : i*Tb - 1/fs;
d=(i-1)*length(t_bit)+1:i*length(t_bit);
if data(i) == 0
fsk_signal(d) = cos(2*pi*fc0*t_bit);
else
fsk_signal(d) = cos(2*pi*fc1*t_bit);
end
end
subplot(2,1,2);
plot(t, fsk_signal);
title('2FSK信号');
xlabel('t');
ylabel('振幅');
评论 (0)