User manual

Table Of Contents
Part 5: IEEE 488.2 Programming Reference
Interpreting Vertical Data
Knowing now how to decipher the data, you may wish to convert it to the appropriate measured values.
The vertical reading for each data point depends on the vertical gain and the vertical offset given in the
descriptor. For acquisition waveforms, this corresponds to the volts/div and voltage offset selected after
conversion for the data representation being used.
The template tells us that the vertical gain and offset can be found at Bytes 156 and 160 and are stored as
floating point numbers in the IEEE 32-bit format. An ASCII string giving the vertical unit is found in
VERTUNIT, byte 196 of the WAVEDESC block. The vertical value is given by the relationship:
value = VERTICAL_GAIN x data - VERTICAL_OFFSET
If the computer or the software available is not able to understand the IEEE floating point values, use the
description in the template.
The data values in a waveform may not correspond to measured points. FIRST_VALID_PNT and LAST_
VALID_PNT give the necessary information. The descriptor also records the SPARSING_FACTOR, the
FIRST_POINT, and the SEGMENT_INDEX to aid interpretation if the options of the WAVEFORM_SETUP
command have been used.
For sequence acquisitions, the data values for each segment are given in their normal order and the
segments are read out one after the other. The important descriptor parameters are the WAVE_ARRAY_
COUNT and the SUBARRAY_COUNT, giving the total number of points and the number of segments.
For waveforms such as the extrema and the complex FFT there are two arrays (one after the other) for
the two of the result.
Calculating the Horizontal Position of Data Points
Each vertical data value has a corresponding horizontal position, usually measured in time or frequency
units. The calculation of this position depends on the type of waveform. Each data value has a position, i, in
the original waveform, with i = 0 corresponding to the first data point acquired. The descriptor parameter
HORUNIT gives a string with the name of the horizontal unit.
Single Sweep Waveforms
x[i] = HORIZ_INTERVAL * i + HORIZ_OFFSET
For acquisition waveforms this time is from the trigger to the data point in question. Its different from
acquisition to acquisition since the HORIZ_OFFSET is measured for each trigger.
Sequence Waveforms
These are really many independent acquisitions, so each segment has its own horizontal offset. These
can be found in the TRIGTIME array.
For the nth segment:
x[i,n] = HORIZ_INTERVAL * i + TRIGGER_OFFSET[n]
The TRIGTIME array can contain up to 200 segments of timing information with two eight-byte double
precision floating point numbers for each segment.
5-23