/**************************************************************************** * A12DRV.H * * This is the header file for the AD12-8 Windows Driver. * * LAST MODIFICATION: AUGUST 11, 1993 * ****************************************************************************/ // error_codes #define AD128_SUCCESS 0 #define CONFIG_CODE 2 #define BASE_ADDRESS 3 #define VOLTAGE_RANGE 4 #define CARD_INACTIVE 5 #define POINT_ERROR 7 #define POINT_INSTALL 8 #define LIST_EMPTY 9 #define LIST_ERROR 10 #define INVALID_CONV 11 #define INVALID_BUFFER 12 #define POINT_UNINSTALL 13 #define ACTIVE_PROCESS 14 #define BUFFER_EMPTY 15 #define INVALID_PTR 16 #define GAIN_ERROR 17 #define UNIT_ERROR 18 #define CURVE_ERROR 19 #define CHANNEL_ERROR 20 #define INVALID_IRQ 21 #define FILE_ERROR 22 #define CONFIG_ERROR 23 #define INVALID_COUNTER 24 #define FREQ_ERROR 25 #define INVALID_MODE 26 #define TIMEOUT 27 #define IRQ_UNINSTALL 29 #define INVALID_PROCESS 30 #define WINDOWSERROR 99 #define NOT_IMPLEMENTED 1000 // voltage range constants #define BIPOLAR_5 0 #define BIPOLAR_10 1 #define UNIPOLAR_10 2 // Process types #define SOFTWARE 0 #define TIMER 1 #define EXTERNAL 2 // temperature unit constants #define DEGREESC 0 #define DEGREESF 1 // curves #define NO_CURVE 0 // No Curve #define CURVE_T 84 // ASCII T #define CURVE_b 98 // ASCII b #define CURVE_e 101 // ASCII e #define CURVE_j 106 // ASCII j #define CURVE_k 107 // ASCII k #define CURVE_r 114 // ASCII r #define CURVE_s 115 // ASCII s #define CURVE_t 116 // ASCII t #define CURVE_a 97 // ASCII a #define CURVE_u 117 // ASCII u // configuration options #define MANUAL 0 #define AUTO 1 // Windows message constants #define WM_INTERRUPTS WM_USER extern "C" { int PASCAL AD128_ClearPointList(); int PASCAL AD128_AddPoints(int start,int stop); int PASCAL AD128_ResetListIndex(); int PASCAL AD128_FetchPointConfig(int addr,int *curve,float *low,float *hi, int *units,int *gain); int PASCAL AD128_FetchLastGain(int addr,int *gain); int PASCAL AD128_DelPtListIndexes(int start,int stop); int PASCAL AD128_GetNextPoint(int *addr,float *result); int PASCAL AD128_GetIndexPoint(int index,int *addr,float *result); int PASCAL AD128_GetDirectPoint(int addr,float *result); int PASCAL AD128_PollScan(int scans,int convs,int index); int PASCAL AD128_PostProcess(int scans,int convs,int index,float *buffer); int PASCAL AD128_SetPointConfig(int start,int stop,int curve,float low, float hi,int units,int gain,int ref_channel); int PASCAL AD128_SetSettleTime(unsigned settle); int PASCAL AD128_IRQStatus(int *scan,int *conv); int PASCAL AD128_IRQTerminate(); int PASCAL AD128_IRQScan(int scans,int convs,int list_index,unsigned IRQ, unsigned process_type,HWND hWnd); int PASCAL AD128_DigitalOut(int value); int PASCAL AD128_DigitalIn(int *value); int PASCAL AD128_SetCounter(int counter,int mode,unsigned loadvalue,int bcd); int PASCAL AD128_ReadCounter(int counter,unsigned *value); int PASCAL AD128_DisableCounter(int counter,int state); int PASCAL AD128_RateGenerator(float freq); int PASCAL AD128_MeasureFreq(int range,float *freq); int PASCAL AD128_MeasurePeriod(int range,float *period); int PASCAL AD128_Init(int config,int addr,int range); void PASCAL AD128_Shutdown(); };