898
Agilent InfiniiVision 7000A Series Oscilloscopes Programmer's Guide
12
Programming Examples
* get_waveform
* ------------------------------------------------------------------
* This function transfers the data displayed on the oscilloscope to
* the computer for storage, plotting, or further analysis.
*/
void get_waveform (void)
{
int waveform_size;
/* WAVEFORM_DATA - To obtain waveform data, you must specify the
* WAVEFORM parameters for the waveform data prior to sending the
* ":WAVEFORM:DATA?" query.
*
* Once these parameters have been sent, the ":WAVEFORM:PREAMBLE?"
* query provides information concerning the vertical and horizontal
* scaling of the waveform data.
*
* With the preamble information you can then use the
* ":WAVEFORM:DATA?" query and read the data block in the
* correct format.
*/
/* WAVE_FORMAT - Sets the data transmission mode for waveform data
* output.
This command controls how the data is formatted when
* sent from the oscilloscope and can be set to WORD or BYTE format.
*/
/* Set waveform format to BYTE. */
iprintf(id, ":WAVEFORM:FORMAT BYTE\n");
/* WAVE_POINTS - Sets the number of points to be transferred.
* The number of time points available is returned by the
* "ACQUIRE:POINTS?" query.
This can be set to any binary
* fraction of the total time points available.
*/
iprintf(id, ":WAVEFORM:POINTS 1000\n");
/* GET_PREAMBLE - The preamble contains all of the current WAVEFORM
* settings returned in the form <preamble block><NL> where the
* <preamble block> is:
*
FORMAT
: int16 - 0 = BYTE, 1 = WORD, 4 = ASCII.
*
TYPE
: int16 - 0 = NORMAL, 1 = PEAK DETECT, 2 = AVERAGE.
*
POINTS
: int32 - number of data points transferred.
*
COUNT
: int32 - 1 and is always 1.
*
XINCREMENT : float64 - time difference between data points.
*
XORIGIN
: float64 - always the first data point in memory.
*
XREFERENCE : int32 - specifies the data point associated
*
with the x-origin.
*
YINCREMENT : float32 - voltage difference between data points.
*
YORIGIN
: float32 - value of the voltage at center screen.
*
YREFERENCE : int32 - data point where y-origin occurs.
*/
printf("Reading preamble\n");
ipromptf(id, ":WAVEFORM:PREAMBLE?\n", "%,10lf\n", preamble);
/*
printf("Preamble FORMAT: %e\n", preamble[0]);
Summary of Contents for InfiniiVision 7000A Series
Page 1: ...Agilent InfiniiVision 7000A Series Oscilloscopes Programmer s Guide...
Page 34: ...34 Agilent InfiniiVision 7000A Series Oscilloscopes Programmer s Guide 1 What s New...
Page 44: ...44 Agilent InfiniiVision 7000A Series Oscilloscopes Programmer s Guide 2 Setting Up...
Page 58: ...58 Agilent InfiniiVision 7000A Series Oscilloscopes Programmer s Guide 3 Getting Started...
Page 750: ...750 Agilent InfiniiVision 7000A Series Oscilloscopes Programmer s Guide 8 Error Messages...
Page 922: ...922 Agilent InfiniiVision 7000A Series Oscilloscopes Programmer s Guide Index...