:MEASure:EYE:CROSsing

Meas. mode:
Eye
Waveform type:
NRZ
Flex Apps:
FlexDCA
FlexRT

Command Syntax

:MEASure:EYE:CROSsing

Query Syntax

:MEASure:EYE:CROSsing?

Description

Moves the Crossing Percentage measurement to the top of the Results table. Displays the measurement if it is not already shown on the table. The query form of the command returns the measured value. Crossing percentage is a measure of the amplitude of the crossing points relative to the one level and zero level. The one and zero level measurements are made in a section of the eye referred to as the eye window boundaries. The default value for the NRZ eye window is the central 20% of the symbol period. Sources can be any displayed waveform, color-grade memory, or function. For example, CHAN1A, CGMemory1, or FUNCtion1. Use the :MEASure:EBOundary:LEFT, :MEASure:EBOundary:RIGHt, and :MEASure:EBOundary:DEFault commands to change the eye boundary settings.

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:EYE:CROSsing:

flex.write(':MEASure:EYE:CROSsing:SOURce CHAN1A')
if flex.query(':MEASure:EYE:CROSsing:STATus?') == 'CORR';
    measurement = flex.query(':MEASure:EYE:CROSsing?')
else:
	details = flex.query(':MEASure:EYE:CROSsing:STATus:DETails?')
	reason = flex.query(':MEASure:EYE:CROSsing:STATus:REASon?')

Child commands for measurement identification:

  • :MEASure:EYE:CROSsing:SOURce

This Eye mode measurement can be applied to NRZ waveforms but not PAM4 waveforms.

Example Command Sequence

:MEASure:EYE:CROSsing:SOURce CHAN1A
:MEASure:EYE:CROSsing
:MEASure:EYE:CROSsing?

Measurement Ready?

To confirm that the measurement is ready to read, you can query the measurement's status:

if ('CORR' in Flex.query(':MEASure:EYE:CROSsing:STATus?')):
	measurement = Flex.query(':MEASure:EYE:CROSsing?')

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:EYE:CROSsing:COUNt?). The technique uses the :COUNt? common measurement query. For example,

if (Flex.query(':MEASure:EYE:CROSsing:COUNt?') >= Flex.query(':ACQuire:ECOUNt?')):
	measurement = Flex.query(':MEASure:EYE:CROSsing?')

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?.