/* dacq25vb.h : header file * * copyright (c) 1999 Base2 Computer Corporation * */ /* define types */ #define LPT1 0 #define LPT2 1 #define LPT3 2 #define SSCLK 0x01; #define csclk 0xff - ssclk; #define scs 0x0002; #define ccs 0xffff - scs; #define FALSE 0 #define TRUE !FALSE enum a2dSelCh {CH0=0, CH1, CH2, CH3, CH4, CH5, CH6, CH7}; enum acqError {STSOK=0,NOPORTS,NOHWDET,PWRFLT,CLKFLT,MEMFLT,PPORTINV,TOOMANYPTS, RUNABORT}; /* ctl reg */ union Ua2dCtlReg { struct { unsigned char pd : 2; unsigned char sglDifN : 1; unsigned char uniBipN : 1; unsigned char sel : 3; unsigned char start : 1; } bf; unsigned char w; }; /* map lpt control out * bit0 = strobe = sclk * bit1 = auto fd = sdi * bit2 = init = dld * bit3 = slct in = cs */ union UlptCO { struct { unsigned char sclk : 1; unsigned char sdi : 1; unsigned char dld : 1; unsigned char cs : 1; unsigned char unused : 4; } bf; unsigned char w; }; /* map lpt status in * bit7 = busy * bit6 = ack * bit5 = pe * bit4 = slct * bit3 = error */ union UlptSI { struct { unsigned char unused : 3; unsigned char trig : 1; unsigned char slct : 1; unsigned char pe : 1; unsigned char dsdo : 1; unsigned char asdo : 1; } bf; unsigned char w; }; union UgetBits { struct { unsigned char bit0 : 1; unsigned char unused : 6; unsigned char bit7 : 1; } b; unsigned char w; }; /* function prototypes */ __declspec(dllexport) unsigned char getDigDat(void); /*get digital data*/ __declspec(dllexport) int getAnlgDat(int chnlID); /*get analog data*/ __declspec(dllexport) void putDigDat(unsigned char dData); /*set digital outputs*/ __declspec(dllexport) int setUpAnlgInput(int diffMask, int bpMask); /*setup inputs*/ __declspec(dllexport) int detect(int lptID); /*detect DACQ25 hardware*/ __declspec(dllexport) void initAcqHw(); /*initial DACQ25 driver*/ __declspec(dllexport) void sleep200(); /*delay 200 milliseconds*/ __declspec(dllexport) void doneAcqHw(); /*cleanup*/ /* end of file */