主要内容

fskmod

频移键控调制

说明

y = fskmod(x,M,freq_sep,nsamp) 使用频移键控调制输出消息信号 x 的调制的复包络 y

y = fskmod(x,M,freq_sep,nsamp,Fs) 指定 y 的采样率。

y = fskmod(x,M,freq_sep,nsamp,Fs,phase_cont) 指定相位连续性。

示例

y = fskmod(x,M,freq_sep,nsamp,Fs,phase_cont,symorder) 指定函数如何将二进制字分配给对应的整数。

示例

全部折叠

生成 FSK 调制信号并显示其频谱特征。

设置函数参数。

M = 4;       % Modulation order
freqsep = 8; % Frequency separation (Hz)
nsamp = 8;   % Number of samples per symbol
Fs = 32;     % Sample rate (Hz)

生成随机 M 元符号。

x = randi([0 M-1],1000,1);

应用 FSK 调制。

y = fskmod(x,M,freqsep,nsamp,Fs);

创建一个频谱分析仪 System object™ 并调用它以显示信号频谱图。

specAnal = spectrumAnalyzer(SampleRate=Fs);
specAnal(y)

输入参数

全部折叠

输入信号,指定为由正整数组成的向量或矩阵。x 的元素取值范围必须为 [0, M – 1]。如果 x 是矩阵,fskmod 独立处理各列。

示例: randi([0 3],100,1)

数据类型: double

调制阶数,指定为 2 的整数次幂。

示例: 2 | 4 | 16

数据类型: double

符号顺序,指定为 'bin''gray'。此参量指定函数如何将二进制向量赋给对应的整数。

  • 如果 symorder'bin',函数使用二进制编码排序。

  • 如果 symorder'gray',函数使用格雷编码排序。

数据类型: char

频率间的期望间隔,以 Hz 为单位指定。根据奈奎斯特采样定理,freq_sepM 必须满足 (M-1)*freq_sep <= Fs

数据类型: double

每个输出符号的采样数,指定为大于 1 的正标量。

数据类型: double

采样率,指定为正标量。

数据类型: double

相位连续性,指定为 'cont''discont'。将 phase_cont 设置为 'cont' 以强制 y 中符号边界上的相位连续,或设置为 'discont' 以避免强制相位连续。

数据类型: char

输出参量

全部折叠

FSK 调制信号的复基带表示,以复数值的向量或矩阵形式返回。y 的列表示独立信道。

数据类型: double | single
复数支持:

参考

[1] Sklar, Bernard. Digital Communications: Fundamentals and Applications. 2nd ed. Upper Saddle River, NJ: Prentice-Hall PTR, 2001.

扩展功能

全部展开

C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。

版本历史记录

在 R2006a 之前推出

全部展开