Programming Examples
41
Agilent InfiniiVision 4000 X-Series Oscilloscopes Programmer's Guide
1299
#include <stdio.h>
/* For printf(). */
#include <string.h>
/* For strcpy(), strcat(). */
#include <time.h>
/* For clock(). */
#include <sicl.h>
/* Agilent SICL routines. */
#define SICL_ADDRESS
"usb0[2391::6054::US50210029::0]"
#define TIMEOUT
5000
#define IEEEBLOCK_SPACE
300000
/* Function prototypes */
void initialize(void);
/* Initialize to known state. */
void capture(void);
/* Capture the waveform. */
void analyze(void);
/* Analyze the captured waveform. */
void do_command(char *command);
/* Send command. */
int do_command_ieeeblock(char *command); /* Command w/IEEE block. */
void do_query_string(char *query);
/* Query for string. */
void do_query_number(char *query);
/* Query for number. */
void do_query_numbers(char *query);
/* Query for numbers. */
int do_query_ieeeblock(char *query);
/* Query for IEEE block. */
void check_instrument_errors();
/* Check for inst errors. */
/* Global variables */
INST id;
/* Device session ID. */
char str_result[256] = {0};
/* Result from do_query_string(). */
double num_result;
/* Result from do_query_number(). */
unsigned char ieeeblock_data[IEEEBLOCK_SPACE];
/* Result from
do_query_ieeeblock(). */
double dbl_results[10];
/* Result from do_query_numbers(). */
/* Main Program
* --------------------------------------------------------------- */
void main(void)
{
/* Install a default SICL error handler that logs an error message
* and exits.
On Windows 98SE or Windows Me, view messages with
* the SICL Message Viewer.
For Windows 2000 or XP, use the Event
* Viewer.
*/
ionerror(I_ERROR_EXIT);
/* Open a device session using the SICL_ADDRESS */
id = iopen(SICL_ADDRESS);
if (id == 0)
{
printf ("Oscilloscope iopen failed!\n");
}
else
{
printf ("Oscilloscope session opened!\n");
}
/* Initialize - start from a known state. */
initialize();
Summary of Contents for InfiniiVision 4000 X-Series
Page 1: ...s1 Agilent InfiniiVision 4000 X Series Oscilloscopes Programmer s Guide ...
Page 32: ...32 Agilent InfiniiVision 4000 X Series Oscilloscopes Programmer s Guide ...
Page 52: ...52 Agilent InfiniiVision 4000 X Series Oscilloscopes Programmer s Guide 2 Setting Up ...
Page 66: ...66 Agilent InfiniiVision 4000 X Series Oscilloscopes Programmer s Guide 3 Getting Started ...
Page 242: ...242 Agilent InfiniiVision 4000 X Series Oscilloscopes Programmer s Guide 7 ACQuire Commands ...
Page 252: ...252 Agilent InfiniiVision 4000 X Series Oscilloscopes Programmer s Guide 8 BUS n Commands ...
Page 300: ...300 Agilent InfiniiVision 4000 X Series Oscilloscopes Programmer s Guide 12 DEMO Commands ...
Page 330: ...330 Agilent InfiniiVision 4000 X Series Oscilloscopes Programmer s Guide 15 DVM Commands ...
Page 386: ...386 Agilent InfiniiVision 4000 X Series Oscilloscopes Programmer s Guide 18 HARDcopy Commands ...
Page 484: ...484 Agilent InfiniiVision 4000 X Series Oscilloscopes Programmer s Guide 21 MEASure Commands ...
Page 1098: ...1098 Agilent InfiniiVision 4000 X Series Oscilloscopes Programmer s Guide 34 WGEN w Commands ...
Page 1174: ...1174 Agilent InfiniiVision 4000 X Series Oscilloscopes Programmer s Guide 37 Error Messages ...
Page 1352: ...1352 Agilent InfiniiVision 4000 X Series Oscilloscopes Programmer s Guide Index ...