You are here : matlabSignal Processingpulsesep

pulsesep() - Signal Processing

S = pulsesep(X) returns
the differences, S, between the mid-reference
level instants of the final negative-going transitions of every positive-polarity
pulse and the next positive-going transition. X is
a bilevel waveform. To determine the transitions that compose each
pulse, pulsesep estimates the state levels of X by
a histogram method. pulsesep identifies all regions
that cross the upper-state boundary of the low state and the lower-state
boundary of the high state. The low-state and high-state boundaries
are expressed as the state level plus or minus a multiple of the difference
between the state levels. See State-Level Tolerances. Because pulsesep uses
interpolation to determine the mid-reference level instants, S may
contain values that do not correspond to sampling instants of the
bilevel waveform, X.S = pulsesep(X,FS) specifies
the sampling rate, FS, in Hz as a positive scalar.
The first time instant corresponds to t=0.
Because pulsesep uses interpolation to determine
the mid-reference level instants, S may contain
values that do not correspond to sampling instants of the bilevel
waveform, X.S = pulsesep(X,T) specifies
the sampling instants, T, in a vector equal in
length to X. Because pulsesep uses
interpolation to determine the mid-reference level instants, S may
contain values that do not correspond to sampling instants of the
bilevel waveform, X.[S,INITCROSS]
= pulsesep(...) returns the mid-reference level instants, INITCROSS,
of the first positive-polarity transitions.[S,INITCROSS,FINALCROSS]
= pulsesep(...) returns the mid-reference level instants, FINALCROSS,
of the final transition of each pulse.[S,INITCROSS,FINALCROSS,NEXTCROSS]
= pulsesep(...) returns the mid-reference level instants, NEXTCROSS,
of the next detected transition after each pulse.[S,INITCROSS,FINALCROSS,NEXTCROSS,MIDLEV]
= pulsesep(...) returns the mid-reference level, MIDLEV.[S,INITCROSS,FINALCROSS,NEXTCROSS,MIDLEV]
= pulsesep(...,Name,Value) returns
the pulse separations with additional options specified by one or
more Name,Value pair arguments.pulsesep(...) plots the signal and darkens
the regions between each pulse where pulse separation is computed.
It marks the location of the mid crossings, and their associated reference
level. The state levels and their associated lower and upper boundaries
(adjustable by the Name,Value pair with name 'Tolerance')
are also plotted.


Syntax

S = pulsesep(X)S = pulsesep(X,FS)S = pulsesep(X,T)[S,INITCROSS]
= pulsesep(...)[S,INITCROSS,FINALCROSS]
= pulsesep(...)[S,INITCROSS,FINALCROSS,NEXTCROSS]
= pulsesep(...)[S,INITCROSS,FINALCROSS,NEXTCROSS,MIDLEV]
= pulsesep(...)[S,INITCROSS,FINALCROSS,NEXTCROSS,MIDLEV]
= pulsesep(...,Name,Value)pulsesep(...)


Example

Pulse Separation in Bilevel WaveformOpen This ExampleCompute the pulse separation in a bilevel waveform with two positive-polarity transitions. The sample rate is 4 MHz.load('pulseex.mat','x','t')

s = pulsesep(x,t)

s =

   3.5014e-06

Plot the waveform and annotate the pulse separation.pulsesep(x,t);

Mid-Reference Level Instants Defining Pulse SeparationOpen This ExampleDetermine the mid-reference level instants that define the pulse separation for a bilevel waveform.load('pulseex.mat','x','t')

[~,~,finalcross,nextcross] = pulsesep(x,t)

finalcross =

   4.6256e-06


nextcross =

   8.1270e-06

Return the pulse separation. Annotate the mid-reference level instants on a plot of the data.pulsesep(x,t)

ans =

   3.5014e-06


Output / Return Value


Limitations


Alternatives / See Also


Reference