:MEASure:OSCilloscope:VUPPer
Command Syntax
:MEASure:OSCilloscope:VUPPer
Query Syntax
:MEASure:OSCilloscope:VUPPer?
Description
Moves the Amplitude-at-Upper measurement to the top of the Results table. This measurement may be compatible with PAM4 signals, depending on the PAM4 waveform. Displays the measurement if it is not already shown on the table. The query form of the command returns the measured value. Amplitude-at-Upper is the measure of the amplitude value of the upper threshold. An annotation is placed on the display at the measured value. By default, this is the standard IEEE 90% threshold measurement level definition. The upper threshold value can be set to 90%, 80%, or a custom value. The Waveform Base and Waveform Top are first located and these values are used to determine the threshold value. Sources can be any displayed waveform, waveform memory, or function. For example, CHAN1A, WMEMory1, or FUNCtion1. Use
:MEASure:TBASe:METHod
to change the definition of the waveform's top/base. Use :MEASure:THReshold:METHod
to change the definition of the waveform's threshold.
PAM4 Compatibility. Because this measurement is based on waveform top and base levels and the passing of the waveform's edge through proximal, mesial, and distal thresholds, the measurement is not designed for PAM4 signals. However, the measurement may be able to be made on PAM4 signals if the waveform top and base definitions are manual set. This can be attempted using the following commands: :MEASure:TBASe:METHOd
, :CHANnel:UDEFined:TOP
, and :CHANnel:UDEFined:BASe
commands.
Measurement Ready?
To confirm that the measurement is ready to read, you can query the measurement's status:
if ('CORR' in Flex.query(':MEASure:OSCilloscope:VUPPer:STATus?')): measurement = Flex.query(':MEASure:OSCilloscope:VUPPer?')
If averaging is turned on (:ACQuire:AVERaging
), you can also confirm if the measurement result is ready by comparing the number of specified averages (:ACQuire:ECOunt?
) versus the number of measurement sweeps that have occurred (:MEASure:OSCilloscope:VUPPer:COUNt?
). The technique uses the :COUNt?
common measurement query. For example,
if (Flex.query(':MEASure:OSCilloscope:VUPPer:COUNt?') >= Flex.query(':ACQuire:ECOUNt?')): measurement = Flex.query(':MEASure:OSCilloscope:VUPPer?')
You can also use an acquisition limit lest to test that a number of waveform samples, or pattern acquisitions have completed before returning a measurement. Refer to the :LTESt:ACQuire:CTYPe
command.
Common Measurement Child Queries
This command supports the use of the following common measurement queries: :LOCation?
, :COUNt?
, :MAXimum?
, :MINimum?
, :MEAN?
, and :SDEViation?
.
Measurement Identification
Avoid subtle programming errors! To ensure that the correct measurement is installed or queried, always explicitly identify a measurement when installing a measurement or querying a measured value, status, or detail. To identify a measurement, specify the measurement's source waveform (:SOURce
child command). With some measurements, you may also need to specify other identifying values. Generally, when selecting a measurement using FlexDCA's GUI, if a dialog appears prompting you to select values, you should explicitly specify these values when remotely identifying the measurement. More information.
For example, to return the status of the measurement, :MEASure:OSCilloscope:VUPPer
:
flex.write(':MEASure:OSCilloscope:VUPPer:SOURce CHAN1A') if flex.query(':MEASure:OSCilloscope:VUPPer:STATus?') == 'CORR'; measurement = flex.query(':MEASure:OSCilloscope:VUPPer?') else: details = flex.query(':MEASure:OSCilloscope:VUPPer:STATus:DETails?') reason = flex.query(':MEASure:OSCilloscope:VUPPer:STATus:REASon?')
Child commands for measurement identification:
:MEASure:OSCilloscope:VUPPer:SOURce
:MEASure:OSCilloscope:VUPPer:REGion
Example Command Sequence
:SYSTem:MODE OSCilloscope :MEASure:OSCilloscope:VUPPer:SOURce CHAN1A :MEASure:OSCilloscope:VUPPer :MEASure:OSCilloscope:VUPPer?