Technical data

Table Of Contents
1100 Agilent Infiniium 9000 Series Oscilloscopes Programmer's Reference
34 Waveform Commands
This program initializes the scope, acquires data, transfers data in bo
th the
BYTE and WORD formats, converts the data into hex, octal, binary and ti
me values,
and stores the data in a file as comma-separated values. This format i
s useful
for spreadsheet applications.
*/
#include <stdio.h> /* location of: printf() */
#include <stdlib.h> /* location of: atof(), atoi() */
#include <string.h> /* location of: strlen() */
#include "sicl.h"
/* Prototypes */
int InitIO( void );
void WriteIO( char *buffer );
unsigned long ReadByte( char *buffer, unsigned long BytesToRead);
unsigned long ReadWord( short *buffer, unsigned long BytesToRead);
void ReadDouble( double *buffer );
void CloseIO( void );
void AcquireData( void );
void GetTimeConversionFactors( void );
void CreateTimeData( unsigned long AcquiredLength,
double *TimeValues );
void WriteCsvToFile( double *TimeValues, unsigned short *wordData,
unsigned char *byteData, unsigned long AcquiredLeng
th);
unsigned long SetupDataTransfer( double lTime, double rTime );
int Round( double number );
/* Defines */
#define MAX_LENGTH 8192000
#define LAN
#ifdef LAN
#define INTERFACE "lan[130.29.71.202]:hpib7,7"
#else
#define INTERFACE "hpib7"
#endif
#define DEVICE_ADDR "hpib7,7"
#define TRUE 1
#define FALSE 0
#define IO_TIMEOUT 20000
/* Globals */
INST bus;
INST scope;
double TimeValues[MAX_LENGTH]; /* Time value of data */
unsigned short wordData[MAX_LENGTH/2];/* Buffer for reading word format
data */
unsigned char byteData[MAX_LENGTH]; /* Buffer for reading byte format
data */
double xOrg, xInc; /* Values necessary to create time
data */