Demodulate using CPFSK method and Viterbi algorithm
The CPFSKDemodulator
object demodulates a signal
that was modulated using the continuous phase frequency shift keying
method. The input is a baseband representation of the modulated signal.
To demodulate a signal that was modulated using the continuous phase frequency shift keying method:
Define and set up your CPFSK demodulator object. See Construction .
Call step
to demodulate the signal
according to the properties of comm.CPFSKDemodulator
.
The behavior of step
is specific to each object in
the toolbox.
Note
Starting in R2016b, instead of using the step
method
to perform the operation defined by the System object™, you can
call the object with arguments, as if it were a function. For example, y
= step(obj,x)
and y = obj(x)
perform
equivalent operations.
H = comm.CPFSKDemodulator
creates a demodulator System object, H
.
This object demodulates the input continuous phase frequency shift
keying (CPFSK) modulated data using the Viterbi algorithm.
H = comm.CPFSKDemodulator(
creates
a CPFSK demodulator object, Name
,Value
)H
, with each specified
property set to the specified value. You can specify additional namevalue
pair arguments in any order as (Name1
,Value1
,...,NameN
,ValueN
).
H = comm.CPFSKDemodulator(M,
creates
a CPFSK demodulator object, Name
,Value
)H
. This object has
the ModulationOrder
property set to M
,
and the other specified properties set to the specified values.

Size of symbol alphabet Specify the size of the symbol alphabet. The value of this property
requires a power of two, real, integer scalar. The default is 

Output data as bits Specify whether the output consists of groups of bits or integer
values. The default is When you set this property to When you set this property to 

Symbol encoding Specify the mapping of the modulated symbols as one of When you set this property to When you set this property to This property applies when you set the 

Modulation index Specify the modulation index. The default is where H1 represents the length of the column vector. When h_{i} varies from interval to interval, the object operates in multih. When the object operates in multih, h_{i} must be a rational number. 

Initial phase offset Specify the initial phase offset of the input modulated waveform
in radians as a real, numeric scalar. The default is 

Number of samples per input symbol Specify the expected number of samples per input symbol as a
positive, integer scalar. The default is 

Traceback depth for Viterbi algorithm Specify the number of trellis branches that the Viterbi algorithm
uses to construct each traceback path as a positive, integer scalar.
The default is 

Data type of output Specify the output data type as one of When you set the 
reset  Reset states of CPFSK demodulator object 
step  Demodulate using CPFSK method and Viterbi algorithm 
Common to All System Objects  

release  Allow System object property value changes 
This object implements the algorithm, inputs, and outputs described on the CPFSK Demodulator Baseband block reference page. The object properties correspond to the block parameters. For CPFSK the phase shift per symbol is π × h, where h is the modulation index.
comm.CPFSKModulator
 comm.CPMDemodulator
 comm.CPMModulator