Agilent Technologies Infiniium 90000 Series Programmer's Manual page 1064

Oscilloscopes
Hide thumbs Also See for Infiniium 90000 Series:
Table of Contents

Advertisement

38
Sample Programs
}
1064
/* Get the waveform type. */
do_query_string(":WAVeform:TYPE?");
printf("Waveform type: %s\n", str_result);
/* Get the number of waveform points. */
do_query_string(":WAVeform:POINts?");
printf("Waveform points: %s\n", str_result);
/* Set the waveform source. */
do_command(":WAVeform:SOURce CHANnel1");
do_query_string(":WAVeform:SOURce?");
printf("Waveform source: %s\n", str_result);
/* Choose the format of the data returned: */
do_command(":WAVeform:FORMat WORD");
do_query_string(":WAVeform:FORMat?");
printf("Waveform format: %s\n", str_result);
/* Display the waveform settings: */
do_query_number(":WAVeform:XINCrement?");
x_increment = num_result;
printf("Waveform X increment: %e\n", x_increment);
do_query_number(":WAVeform:XORigin?");
x_origin = num_result;
printf("Waveform X origin: %e\n", x_origin);
do_query_number(":WAVeform:YINCrement?");
y_increment = num_result;
printf("Waveform Y increment: %e\n", y_increment);
do_query_number(":WAVeform:YORigin?");
y_origin = num_result;
printf("Waveform Y origin: %e\n", y_origin);
/* Read waveform data. */
num_values = do_query_ieeeblock_words(":WAVeform:DATA?");
printf("Number of data values: %d\n", num_values);
/* Open file for output. */
fp = fopen("c:\\scope\\data\\waveform_data.csv", "wb");
/* Output waveform data in CSV format. */
for (i = 0; i < num_values - 1; i++)
{
/* Write time value, voltage value. */
fprintf(fp, "%9f, %6f\n",
x_origin + ((float)i * x_increment),
((float)ieeeblock_data_words[i] * y_increment) + y_origin);
}
/* Close output file. */
fclose(fp);
printf("Waveform format WORD data written to ");
printf("c:\\scope\\data\\waveform_data.csv.\n");
Agilent Infiniium 90000 Series Oscilloscopes Programmer's Reference

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents