matlab 2fsk包络检波
时间: 2023-07-28 16:07:57 浏览: 132
fsk.zip_3dm_FSK调制解调_fsk解调_包络检波_包络检波 matlab
5星 · 资源好评率100%
你可以使用 MATLAB 中的 demod 函数进行 2FSK 包络检波。假设你已经获取了调制信号的包络,可以用以下代码进行解调:
```matlab
% 设置参数
fc = 10000; % 载波频率
fs = 100000; % 采样率
dev = 5000; % 频偏
mod_index = dev / fc; % 调制指数
% 生成调制信号
t = 0:1/fs:1;
msg = sin(2*pi*10*t); % 要发送的信息信号
mod_signal = fskmod(msg,2,fc,fs,dev); % 2FSK 调制
% 包络检波
envelope = abs(hilbert(mod_signal)); % 获取包络信号
demod_signal = demod(envelope,fc,fs,'fm',mod_index); % 解调
% 绘制结果
subplot(2,1,1)
plot(t,msg)
title('原始信号')
subplot(2,1,2)
plot(t,demod_signal)
title('解调信号')
```
在上述代码中,我们首先生成了一个包含信息信号的 2FSK 调制信号 mod_signal。接着,我们使用 `hilbert` 函数获取了调制信号的包络,并使用 `demod` 函数进行解调。最后,我们将原始信号和解调信号绘制在同一张图上进行比较。需要注意的是,在解调时需要指定调制指数 mod_index。
阅读全文