9Programming Examples
*/
viPrintf(vi, ":BLANK CHANNEL1\n"); viPrintf(vi, ":VIEW CHANNEL1\n");
/* TIME_MODE (not executed in this example) - Set the time base
*mode to MAIN, DELAYED, XY or ROLL.
*/
viPrintf(vi, ":TIMEBASE:MODE MAIN\n");
}
/*
*capture
*
*This function prepares the scope for data acquisition and then
*uses the DIGITIZE MACRO to capture some data.
*/
void capture (void)
{
/* AQUIRE_TYPE - Sets the acquisition mode. There are three
*acquisition types NORMAL, PEAK, or AVERAGE.
*/
viPrintf(vi, ":ACQUIRE:TYPE NORMAL\n");
/* AQUIRE_COMPLETE - Specifies the minimum completion criteria
*for an acquisition. The parameter determines the percentage
*of time buckets needed to be "full" before an acquisition is
*considered to be complete.
*/
viPrintf(vi, ":ACQUIRE:COMPLETE 100\n");
/* DIGITIZE - Used to acquire the waveform data for transfer over
*the interface. Sending this command causes an acquisition to
*take place with the resulting data being placed in the buffer.
*/
/* NOTE! The use of the DIGITIZE command is highly recommended
*as it will ensure that sufficient data is available for
*measurement. Keep in mind when the oscilloscope is running,
*communication with the computer interrupts data acquisition.
*Setting up the oscilloscope over the bus causes the data
*buffers to be cleared and internal hardware to be reconfigured.
*If a measurement is immediately requested there may not have
*been enough time for the data acquisition process to collect
*data and the results may not be accurate. An error value of
*9.9E+37 may be returned over the bus in this situation.
*/
viPrintf(vi, ":DIGITIZE CHAN1\n");
}
/*
*analyze
*
*In this example we will do the following:
*- Save the system setup to a file for restoration at a later time.
*- Save the oscilloscope display to a file which can be printed.
*- Make single channel measurements.
562 | Agilent InfiniiVision 5000 Series Oscilloscopes Programmer's Reference |