⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fskdemode2.m

📁 FSK调制解调程序
💻 M
字号:
%经典谱估计直接法实现FSK信号的解调
%中频fc为15MHz,采样率fs为50MHz
%一个脉冲内5bit信息
%fs=n/tb,tb为码元宽度,n为一个码元内的采样点数
clear all;

fs=5.0e+007;
ts=1/fs;
tb=5e-006;%码元宽度5us
sample=tb/ts;%一个码元内采样250个点
fc=1.5e+007;
f1=fc+8/(tb);%1.66e+007,对应1
f2=fc-8/(tb);%1.34e+007,对应0
B=5.0e+006;


%对该输入信号FSK调制
Xin=[1,1,1,1,1,1,0,1,1,1];%randn(5,1)>0;
tt=(0:tb/sample:tb-(tb/sample));
t=[tt;tt+tb;tt+2*tb;tt+3*tb;tt+4*tb;tt+5*tb;tt+6*tb;tt+7*tb;tt+8*tb;tt+9*tb];
y=zeros(10,length(tt));
for i=1:10
y(i,:)=Xin(i)*cos(2*pi*f1*t(i,:))+~Xin(i)*cos(2*pi*f2*t(i,:));
end
t=reshape(t',length(tt)*10,1);
y=reshape(y',length(tt)*10,1);


%变换到基带
p1=cos(2*pi*fc*t-2*B*pi*t/2);
z=y.*p1;


%窗设计低通FIR滤波器
%假设信号带宽为3.5MHz
fs=3.22e+007;
fn=1.0e+007;%截止频率
Wn=fn/fs;
N=127;%低通FIR滤波器的阶数
K=FIR1(N,Wn);
H=zeros(1,2500);
Y=conv(z,K);
n=250;
%截取后320个点
for j=1:2500
    H(j)=Y(j+63);
end
%长度为1250

%解调FSK信号
%谱估计:直接法
k1=floor(250*(f1-fc+B/2)/fs)
k2=floor(250*(f2-fc+B/2)/fs)
for i=1:10
    for j=1:n
        C(i,j)=H(j+(i-1)*n);
    end
end

OUT=zeros(1,10);
for i=1:10
    A=fft(C(i,:));
    for j=1:n
      Pxx(j)=(abs(A(j))^2)/n;
    end
    if(Pxx(k1)>Pxx(k2))
               OUT(i)=1;
    else
               OUT(i)=0;
    end
end
OUT

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -