2026a

# fmmod


调频

函数库: TyCommunication

# 语法

    y = fmmod(x, Fc, Fs, freqdev)
    y = fmmod(x, Fc, Fs, freqdev, ini_phase)

# 说明

y=fmmod(x, Fc, Fs, freqdev) 返回调频(FM)信号 y,给定输入消息信号 x。其中载波信号的频率为 Fc,载波信号和 x 的采样频率为 Fs,调频信号的频率偏移为 freqdev示例

TIP

Fs 的值必须满足 Fs≥2Fcfreqdev 的值必须满足 freqdev<Fc

y = fmmod(x, Fc, Fs, freqdev, ini_phase) 指定了调频信号的初始相位

# 示例

FM调制正弦信号

将采样频率设置为 1kHz,将载波频率设置为 200Hz。 生成一个持续时间为 0.2s 的时间向量。

using TyCommunication
using TyPlot
fs = 1000;
fc = 200;
t = 0:1/fs:0.2

生成两个频率为 30 和 60 Hz 的正弦信号并求和

x = sin.(2 * pi * 30 * t) .+ 2 * sin.(2 * pi * 60 * t)

将频率偏差设置为 50 Hz。

fDev = 50

对信号x进行频率调制

y = fmmod(x, fc, fs, fDev);

绘制原始信号和调频信号。

plot(t, x, "r", t, y, "b--")
xlabel("Time (s)")
ylabel("Amplitude")
legend(["Original Signal", "Demodulated Signal"])

# 输入参数

x - 输入消息信号
标量 | 向量 | 矩阵 | 3维数组

输入消息信号,指定为标量、向量、矩阵或3维数组。x的每个元素都必须是实数。

数据类型:Float64

Fc - 载波信号频率
正实数标量

载波信号频率,单位为赫兹(Hz),指定为正实数标量。

数据类型:Float64

Fs - 采样频率
正实数标量

载波信号和输入消息信号的采样频率,单位为赫兹(Hz),指定为正实数标量。

数据类型:Float64

freqdev - 频率偏移
正实数标量

调频信号的频率偏移,单位为赫兹(Hz),指定为正实数标量。

数据类型:Float64

Fs - 初始相位
实数标量

调频信号的初始相位,单位为弧度(rad),指定为实数标量。

数据类型:Float64

# 输出参数

y - 调频输出信号
标量 | 向量 | 矩阵 | 3维数组

调频信号,以标量、向量、矩阵或3维数组形式返回。

数据类型:Float64

# 另请参阅

fmdemod | ammod | pmmod