⛄一、获取代码方式
获取代码方式1:
完整代码已上传我的资源:【数字信号调制】基于matlab多进制数字频率调制(4FSK)【含Matlab源码 999期】
点击上面蓝色字体,直接付费下载,即可。
获取代码方式2:
付费专栏Matlab信号处理(初级版)
备注:
点击上面蓝色字体付费专栏Matlab信号处理(初级版),扫描上面二维码,付费29.9元订阅海神之光博客付费专栏Matlab信号处理(初级版),凭支付凭证,私信博主,可免费获得1份本博客上传CSDN资源代码(有效期为订阅日起,三天内有效);
点击CSDN资源下载链接:1份本博客上传CSDN资源代码
⛄二、简介
** FSK信号的解调原理**
FSK信号的解调也有非相干和相干两种,FSK信号可以看作是用两个频率源交替传输得到的,所以FSK的接收机由两个并联的ASK接收机组成。
(1)相干解调
相干解调是利用乘法器,输入一路与载频相干的参考信号与载频相乘,通过低通滤波,滤除高频信号,即得原始信号,FSK经过带通滤波之后,可以看作是两路ASK信号,相干检测器组成的原理如下所示:
⛄三、部分源代码
% 主要功能:实现4FSK调制
% s :输入的整型序列【0-3】,f0,f1,f2,f3:分别代表4个载波
%nSamples, 每个符号的采样个数,必须为偶数
s=randint(1,10,4);
f0=1;f1=2;f2=4;f3=8;
nSamples=100;
t=0:2pi/99:2pi;% 注意t长度与 nSamples 长度一致
cp=[];mod=[];bit=[];
for n=1:length(s)
if s(n)==0
cp1=ones(1,nSamples);c=sin(f0t);
bit1=zeros(1,nSamples); % 00
elseif s(n)==1
cp1=ones(1,nSamples);c=sin(f1t);
bit11=zeros(1,nSamples/2); %01
bit12=ones(1,nSamples/2);
bit1=[bit11 bit12];
elseif s(n)==2
cp1=ones(1,nSamples);c=sin(f2t);
bit11=ones(1,nSamples/2); %10
bit12=zeros(1,nSamples/2);
bit1=[bit11 bit12];
else s(n)==3
cp1=ones(1,nSamples);c=sin(f3t);
bit11=ones(1,nSamples/2); %11
bit12=ones(1,nSamples/2);
bit1=[bit11 bit12];
end
cp=[cp cp1];
mod=[mod c];
bit=[bit bit1];
end
⛄四、运行结果
⛄五、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1] 沈再阳.精通MATLAB信号处理[M].清华大学出版社,2015.
[2]高宝建,彭进业,王琳,潘建寿.信号与系统——使用MATLAB分析与实现[M].清华大学出版社,2020.
[3]王文光,魏少明,任欣.信号处理与系统分析的MATLAB实现[M].电子工业出版社,2018.
3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除