This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.


System object: phased.SteppedFMWaveform
Package: phased

Samples of stepped FM pulse waveform


Y = step(sSFM)
Y = step(sSFM,prfidx)



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. When the only argument to the step method is the System object itself, replace y = step(obj) by y = obj().

Y = step(sSFM) returns samples of the stepped FM pulses in a column vector, Y. The output, Y, results from increasing the frequency of the preceding output by an amount specified by the FrequencyStep property. If the total frequency increase is larger than the value specified by the SweepBandwidth property, the samples of a rectangular pulse are returned.

Y = step(sSFM,prfidx), uses the prfidx index to select the PRF from the predefined vector of values specified by in the PRF property. This syntax applies when you set the PRFSelectionInputPort property to true.


The object performs an initialization the first time the step method is executed. This initialization locks nontunable properties (MATLAB) and input specifications, such as dimensions, complexity, and data type of the input data. If you change a nontunable property or an input specification, the System object issues an error. To change nontunable properties or inputs, you must first call the release method to unlock the object.


expand all

Create a stepped frequency pulse waveform object with a frequency step of 40 kHz and four frequency steps.

waveform = phased.SteppedFMWaveform(...
fs = waveform.SampleRate;

Use the waveform method to obtain the pulses.

First, generate pulse 1.

pulse1 = waveform();

Then, generate pulse 2, incremented by the frequency step 40 kHz

pulse2 = waveform();

Next, generate pulse 3, incremented by the frequency step 40 kHz

pulse3 = waveform();

Finally, generate pulse 4, incremented by the frequency step 40 kHz

pulse4 = waveform();
nsamps = size(pulse4,1);
t = [0:(nsamps-1)]/fs*1e6;
xlabel('Time (\mu sec)')


expand all

Was this topic helpful?