lf251190685 发表于 2009-12-12 13:57

fsk调制与解调源代码

cowry 发表于 2009-12-12 23:47

这样的帖子下次请直接粘贴内容,谢谢合作


clear all;

x=randn(10,1)>0;

fl=5000;fh=8000;fs=100000;

ts=1/200;%码元速率200波特

tt=(0:1/fs:ts);

t=;

y=zeros(10,length(tt));

i=1;

%对该输入信号FSK调制

while i<=10

y(i,:)=x(i)*sin(2*pi*fh*t(i,:))+~x(i)*sin(2*pi*fl*t(i,:));

i=i+1;

end

t=reshape(t',length(tt)*10,1);

y=reshape(y',length(tt)*10,1);

subplot(211);plot(t,y);

title('FSK信号的时域图形');

%该输入信号的频域图形

n=length(y);

r=fft(y)/n;r=fftshift(r);

f=linspace(-fs/2,fs/2,n);

subplot(212);

plot(f,abs(r));

set(gca,'XTick',-fs/2:5000:fs/2);

title('FSK信号的频谱图');





clear all

%二进制随机序列

x=;%定义一个二进制10元素数组,作为FSK信号输入数据。
figure(1);
stem(x,'.');
title('二进制随机序列');xlabel('时间');ylabel('幅度');

%FSK信号的调制

f0=1000;f1=2000;fs=8000;ts=1/125;%0对应频率f0,1对应频率f1,采样频率fs,码元速率125波特。
tt=(0:1/fs:ts);
t=;
y=zeros(10,length(tt));
i=1;
%开始调制
while i<=10
y(i,:)=x(i)*cos(2*pi*f1*t(i,:))+~x(i)*cos(2*pi*f0*t(i,:));
i=i+1;
end
t=reshape(t',length(tt)*10,1);%阵列重新排列
y=reshape(y',length(tt)*10,1);
figure(2);
plot(t,y);
title('FSK信号时域波形');xlabel('时间');ylabel('幅度');

tt=(0:1/fs:ts);
t=;
y=zeros(10,length(tt));
i=1;
%开始调制
while i<=10
y(i,:)=x(i)*cos(2*pi*f1*t(i,:))+~x(i)*cos(2*pi*f0*t(i,:));
i=i+1;
end
t=reshape(t',length(tt)*10,1);%阵列重新排列
y=reshape(y',length(tt)*10,1);
figure(2);
plot(t,y);
title('FSK信号时域波形');xlabel('时间');ylabel('幅度');

gjlin 发表于 2010-3-10 19:57

一直找这个啊,就要这个
页: [1]
查看完整版本: fsk调制与解调源代码