:WAVeform:EYE:INTeger:DATa?

Instrument:
DCA-X
DCA-M
Meas. mode:
Eye
Flex Apps:
FlexDCA
FlexRT

Query Syntax

:WAVeform:EYE:INTeger:DATa?

Description

This query returns eye diagram data as definite-length binary block data. The color grade/gray scale database values are returned in 32-bit integer format. Color grade/gray scale data is transferred as a two dimensional array consisting of 521 rows by 751 columns for a total number of 391,271 points (1,565,084 bytes). This array corresponds to the graticule display, where each point contains a sample hit count. The array is transferred column by column, starting with the lower left corner of the graticule.

The time for any column of data points can be calculated as:

where,

  • Xincrement is the time spacing between database columns and is returned with the :WAVeform:EYE:XINCrement? query.
  • Xindex is the column count index, starting at zero and ending at 750, the value returned by the :WAVeform:EYE:COLumns? query.
  • Xorigin is the time position of the first column and is returned using the :WAVeform:EYE:XORigin? query.

The voltage for any data point at a given row (that contains a hit count) is determined by using the following equation:

where,

  • Yincrement is the amplitude spacing between database rows and is returned with the :WAVeform:EYE:YINCrement? query.
  • Yindex is the row count index, starting at zero and ending at 521, the value returned by the :WAVeform:EYE:ROWS? query.
  • Yorigin is a voltage value of the top row and is returned using the :WAVeform:EYE:YORigin? query.

To transfer the data in ASCII values, use the :WAVeform:EYE:ASCii:DATa? query.

Returned Data Type

The :WAVeform:EYE:INTeger:DATa? query returns long int (unsigned) values as binary definite-length block data queries binary definite-length block data queries binary definite-length block data queries. You must specify this data type in your program language's command that you use to query the data. The specifier for this data type in your programming language will likely be "L" and it is identified in this example with red text. Confirm this with your programming language's documentation. The following is an example of the command used in Python using pyvisa.

Flex.read_termination = ''
Flex.write_termination = ''
endianness = Flex.query(':SYSTem:BORDER?')
Flex.write(':SYSTem:BORDER LENDian')
data = Flex.query_binary_values(':WAVeform:EYE:INTeger:DATa?',
	datatype='L',
	container=list,
	is_big_endian=False,
	header_fmt='ieee')
Flex.write(':SYSTem:BORDER ' + endianness)

Endianness of Returned Definite-Length Block Data

To correctly interpret definite-length block data, you must know the endianness (byte order) of the returned data (integers or real) from FlexDCA and you will must likely need specify this same endianness in your program language's command that is used to query the data. Endianness can be set to "little endian" order in which the least significant byte is sent first and the most significant byte sent last. Or, the endianness can be set to "big endian" order in which the most significant byte is sent first and the least significant byte sent last.

To specify or query the endianness setting for binary block data, use the :SYSTem:BORDer command. The endiannes setting applies to all binary queries except for :DISK:FILE:READ? query.

If you plan to change FlexDCA's current endian setting, it is a good practice to query FlexDCA's current endian setting and restore the setting when your program completes. This will avoid other programs having errors due to assuming a particular endianness setting.

After a factory preset (:SYSTem:FACTory), sets little endian. A default setup (:SYSTem:DEFault) does not affect endianness.

Be aware that VXI plug-and-play drivers can change the endianness setting. As a result always explicitly set the endianness in your program before transferring any binary data.

The ability to specify endianness requires FlexDCA revision A.04.00 and above. Prior to revision A.04.00, the endianness of returned block data was always LSB (Least Significant Byte) first.

Requires Eye/Mask Mode (:SYSTem:MODE).