/* ************************************************************** */ /* * TDS3012B.H * * Zachary Wolf * 7/27/98 */ #ifndef __TDS3012B_HEADER #define __TDS3012B_HEADER #if defined(__cplusplus) || defined(__cplusplus__) extern "C" { #endif /* ************************************************************** */ /* ENUM DECLARATIONS */ enum vert_coupling_enum {AC, DC, GND}; enum vert_select_enum {ON, OFF}; enum trig_mode_enum {AUTO, NORM}; enum trig_source_enum {EXT, EXT10, VERTICAL, CH1, CH2, LINE, ALTERNATING}; enum trig_coupling_enum {TDC, HFREJ, LFREJ, NOISEREJ}; enum trig_slope_enum {FALL, RISE}; enum trig_holdoff_by_enum {TIME, VALUE}; enum acq_mode_enum {SAMPLE, PEAKDETECT, AVERAGE, ENVELOPE}; /* ************************************************************** */ /* PUBLIC FUNCTION DECLARATIONS */ void tds3012b_init(int gpib_board_addr, int gpib_dev_addr, int* dev_ID); void tds3012b_factory_setup(int dev_ID); void tds3012b_set_vert_scale(int dev_ID, int chan, double scale); void tds3012b_set_vert_position(int dev_ID, int chan, double position); void tds3012b_set_vert_coupling(int dev_ID, int chan, enum vert_coupling_enum coupling); void tds3012b_set_vert_chan_select(int dev_ID, int chan, enum vert_select_enum select); void tds3012b_set_horiz_scale(int dev_ID, double scale); void tds3012b_set_horiz_record_length(int dev_ID, long int record_length); void tds3012b_set_horiz_trigger_position(int dev_ID, int trigger_position); void tds3012b_set_trig_mode(int dev_ID, enum trig_mode_enum mode); void tds3012b_set_trig_edge(int dev_ID, enum trig_source_enum source, enum trig_coupling_enum coupling, enum trig_slope_enum slope); void tds3012b_set_trig_holdoff(int dev_ID, enum trig_holdoff_by_enum by, double holdoff_time, double holdoff_value); void tds3012b_set_trig_level(int dev_ID, double trigger_level); void tds3012b_set_acq_mode(int dev_ID, enum acq_mode_enum mode); void tds3012b_set_acq_num_ave(int dev_ID, int num_ave); void tds3012b_single_shot(int dev_ID); void tds3012b_get_waveform(int dev_ID, int chan, long int* num_samp, double t[], double v[]); void tds3012b_exit(int dev_ID); /* ************************************************************** */ /* SEMI-PERMANENT PARAMETERS */ #define TDS3012B_MAX_NUM_DEV 10 #define TDS3012B_MAX_CMD 100 #define TDS3012B_MAX_WAVEFORM 55000 /* ************************************************************** */ /* DONE */ #if defined(__cplusplus) || defined(__cplusplus__) } #endif #endif