using System.Runtime.InteropServices;
|
|
namespace Plugin.DODriverControl.Api;
|
|
public delegate void CallbackDelegate();
|
|
public class DASK
|
{
|
//ADLink PCI Card Type
|
public const ushort PCI_6208V =1;
|
public const ushort PCI_6208A =2;
|
public const ushort PCI_6308V =3;
|
public const ushort PCI_6308A =4;
|
public const ushort PCI_7200 =5;
|
public const ushort PCI_7230 =6;
|
public const ushort PCI_7233 =7;
|
public const ushort PCI_7234 =8;
|
public const ushort PCI_7248 =9;
|
public const ushort PCI_7249 =10;
|
public const ushort PCI_7250 =11;
|
public const ushort PCI_7252 =12;
|
public const ushort PCI_7296 =13;
|
public const ushort PCI_7300A_RevA =14;
|
public const ushort PCI_7300A_RevB =15;
|
public const ushort PCI_7432 =16;
|
public const ushort PCI_7433 =17;
|
public const ushort PCI_7434 =18;
|
public const ushort PCI_8554 =19;
|
public const ushort PCI_9111DG =20;
|
public const ushort PCI_9111HR =21;
|
public const ushort PCI_9112 =22;
|
public const ushort PCI_9113 =23;
|
public const ushort PCI_9114DG =24;
|
public const ushort PCI_9114HG =25;
|
public const ushort PCI_9118DG =26;
|
public const ushort PCI_9118HG =27;
|
public const ushort PCI_9118HR =28;
|
public const ushort PCI_9810 =29;
|
public const ushort PCI_9812 =30;
|
public const ushort PCI_7396 =31;
|
public const ushort PCI_9116 =32;
|
public const ushort PCI_7256 =33;
|
public const ushort PCI_7258 =34;
|
public const ushort PCI_7260 =35;
|
public const ushort PCI_7452 =36;
|
public const ushort PCI_7442 =37;
|
|
public const ushort MAX_CARD =32;
|
|
//Error Number
|
public const short NoError =0;
|
public const short ErrorUnknownCardType =-1;
|
public const short ErrorInvalidCardNumber =-2;
|
public const short ErrorTooManyCardRegistered =-3;
|
public const short ErrorCardNotRegistered =-4;
|
public const short ErrorFuncNotSupport =-5;
|
public const short ErrorInvalidIoChannel =-6;
|
public const short ErrorInvalidAdRange =-7;
|
public const short ErrorContIoNotAllowed =-8;
|
public const short ErrorDiffRangeNotSupport =-9;
|
public const short ErrorLastChannelNotZero =-10;
|
public const short ErrorChannelNotDescending =-11;
|
public const short ErrorChannelNotAscending =-12;
|
public const short ErrorOpenDriverFailed =-13;
|
public const short ErrorOpenEventFailed =-14;
|
public const short ErrorTransferCountTooLarge =-15;
|
public const short ErrorNotDoubleBufferMode =-16;
|
public const short ErrorInvalidSampleRate =-17;
|
public const short ErrorInvalidCounterMode =-18;
|
public const short ErrorInvalidCounter =-19;
|
public const short ErrorInvalidCounterState =-20;
|
public const short ErrorInvalidBinBcdParam =-21;
|
public const short ErrorBadCardType =-22;
|
public const short ErrorInvalidDaRefVoltage =-23;
|
public const short ErrorAdTimeOut =-24;
|
public const short ErrorNoAsyncAI =-25;
|
public const short ErrorNoAsyncAO =-26;
|
public const short ErrorNoAsyncDI =-27;
|
public const short ErrorNoAsyncDO =-28;
|
public const short ErrorNotInputPort =-29;
|
public const short ErrorNotOutputPort =-30;
|
public const short ErrorInvalidDioPort =-31;
|
public const short ErrorInvalidDioLine =-32;
|
public const short ErrorContIoActive =-33;
|
public const short ErrorDblBufModeNotAllowed =-34;
|
public const short ErrorConfigFailed =-35;
|
public const short ErrorInvalidPortDirection =-36;
|
public const short ErrorBeginThreadError =-37;
|
public const short ErrorInvalidPortWidth =-38;
|
public const short ErrorInvalidCtrSource =-39;
|
public const short ErrorOpenFile =-40;
|
public const short ErrorAllocateMemory =-41;
|
public const short ErrorDaVoltageOutOfRange =-42;
|
public const short ErrorDaExtRefNotAllowed =-43;
|
public const short ErrorDIODataWidthError =-44;
|
public const short ErrorTaskCodeError =-45;
|
public const short ErrortriggercountError =-46;
|
public const short ErrorInvalidTriggerMode =-47;
|
public const short ErrorInvalidTriggerType =-48;
|
public const short ErrorInvalidCounterValue =-50;
|
public const short ErrorInvalidEventHandle =-60;
|
public const short ErrorNoMessageAvailable =-61;
|
public const short ErrorEventMessgaeNotAdded =-62;
|
//Error number for driver API
|
public const short ErrorConfigIoctl =-201;
|
public const short ErrorAsyncSetIoctl =-202;
|
public const short ErrorDBSetIoctl =-203;
|
public const short ErrorDBHalfReadyIoctl =-204;
|
public const short ErrorContOPIoctl =-205;
|
public const short ErrorContStatusIoctl =-206;
|
public const short ErrorPIOIoctl =-207;
|
public const short ErrorDIntSetIoctl =-208;
|
public const short ErrorWaitEvtIoctl =-209;
|
public const short ErrorOpenEvtIoctl =-210;
|
public const short ErrorCOSIntSetIoctl =-211;
|
public const short ErrorMemMapIoctl =-212;
|
public const short ErrorMemUMapSetIoctl =-213;
|
public const short ErrorCTRIoctl =-214;
|
public const short ErrorGetResIoctl =-215;
|
|
//Synchronous Mode
|
public const ushort SYNCH_OP =1;
|
public const ushort ASYNCH_OP =2;
|
|
//AD Range
|
public const ushort AD_B_10_V =1;
|
public const ushort AD_B_5_V =2;
|
public const ushort AD_B_2_5_V =3;
|
public const ushort AD_B_1_25_V =4;
|
public const ushort AD_B_0_625_V =5;
|
public const ushort AD_B_0_3125_V =6;
|
public const ushort AD_B_0_5_V =7;
|
public const ushort AD_B_0_05_V =8;
|
public const ushort AD_B_0_005_V =9;
|
public const ushort AD_B_1_V =10;
|
public const ushort AD_B_0_1_V =11;
|
public const ushort AD_B_0_01_V =12;
|
public const ushort AD_B_0_001_V =13;
|
public const ushort AD_U_20_V =14;
|
public const ushort AD_U_10_V =15;
|
public const ushort AD_U_5_V =16;
|
public const ushort AD_U_2_5_V =17;
|
public const ushort AD_U_1_25_V =18;
|
public const ushort AD_U_1_V =19;
|
public const ushort AD_U_0_1_V =20;
|
public const ushort AD_U_0_01_V =21;
|
public const ushort AD_U_0_001_V =22;
|
|
//Clock Mode
|
public const ushort TRIG_SOFTWARE =0;
|
public const ushort TRIG_INT_PACER =1;
|
public const ushort TRIG_EXT_STROBE =2;
|
public const ushort TRIG_HANDSHAKE =3;
|
public const ushort TRIG_CLK_10MHZ =4; //PCI-7300A
|
public const ushort TRIG_CLK_20MHZ =5; //PCI-7300A
|
public const ushort TRIG_DO_CLK_TIMER_ACK =6; //PCI-7300A Rev. B
|
public const ushort TRIG_DO_CLK_10M_ACK =7; //PCI-7300A Rev. B
|
public const ushort TRIG_DO_CLK_20M_ACK =8; //PCI-7300A Rev. B
|
//Virtual Sampling Rate for using external clock as the clock source
|
public const double CLKSRC_EXT_SampRate =10000;
|
|
//-------- Constants for PCI-6208A/PCI-6308A/PCI-6308V -------------------
|
//Output Mode
|
public const ushort P6208_CURRENT_0_20MA =0;
|
public const ushort P6208_CURRENT_4_20MA =3;
|
public const ushort P6208_CURRENT_5_25MA =1;
|
public const ushort P6308_CURRENT_0_20MA =0;
|
public const ushort P6308_CURRENT_4_20MA =3;
|
public const ushort P6308_CURRENT_5_25MA =1;
|
//AO Setting
|
public const ushort P6308V_AO_CH0_3 =0;
|
public const ushort P6308V_AO_CH4_7 =1;
|
public const ushort P6308V_AO_UNIPOLAR =0;
|
public const ushort P6308V_AO_BIPOLAR =1;
|
//-------- Constants for PCI-7200 --------------------
|
//InputMode
|
public const ushort DI_WAITING =0x02;
|
public const ushort DI_NOWAITING =0x00;
|
|
public const ushort DI_TRIG_RISING =0x04;
|
public const ushort DI_TRIG_FALLING =0x00;
|
|
public const ushort IREQ_RISING =0x08;
|
public const ushort IREQ_FALLING =0x00;
|
|
//Output Mode
|
public const ushort OREQ_ENABLE =0x10;
|
public const ushort OREQ_DISABLE =0x00;
|
|
public const ushort OTRIG_HIGH =0x20;
|
public const ushort OTRIG_LOW =0x00;
|
|
//-------- Constants for PCI-7248/7296/7396/7442 ---------------
|
//DIO Port Direction
|
public const ushort INPUT_PORT = 1;
|
public const ushort OUTPUT_PORT = 2;
|
//DIO Line Direction
|
public const ushort INPUT_LINE = 1;
|
public const ushort OUTPUT_LINE = 2;
|
|
//Channel & Port
|
public const ushort Channel_P1A =0;
|
public const ushort Channel_P1B =1;
|
public const ushort Channel_P1C =2;
|
public const ushort Channel_P1CL =3;
|
public const ushort Channel_P1CH =4;
|
public const ushort Channel_P1AE =10;
|
public const ushort Channel_P1BE =11;
|
public const ushort Channel_P1CE =12;
|
public const ushort Channel_P2A =5;
|
public const ushort Channel_P2B =6;
|
public const ushort Channel_P2C =7;
|
public const ushort Channel_P2CL =8;
|
public const ushort Channel_P2CH =9;
|
public const ushort Channel_P2AE =15;
|
public const ushort Channel_P2BE =16;
|
public const ushort Channel_P2CE =17;
|
public const ushort Channel_P3A =10;
|
public const ushort Channel_P3B =11;
|
public const ushort Channel_P3C =12;
|
public const ushort Channel_P3CL =13;
|
public const ushort Channel_P3CH =14;
|
public const ushort Channel_P4A =15;
|
public const ushort Channel_P4B =16;
|
public const ushort Channel_P4C =17;
|
public const ushort Channel_P4CL =18;
|
public const ushort Channel_P4CH =19;
|
public const ushort Channel_P5A =20;
|
public const ushort Channel_P5B =21;
|
public const ushort Channel_P5C =22;
|
public const ushort Channel_P5CL =23;
|
public const ushort Channel_P5CH =24;
|
public const ushort Channel_P6A =25;
|
public const ushort Channel_P6B =26;
|
public const ushort Channel_P6C =27;
|
public const ushort Channel_P6CL =28;
|
public const ushort Channel_P6CH =29;
|
//the following are used for PCI7396
|
public const ushort Channel_P1 =30;
|
public const ushort Channel_P2 =31;
|
public const ushort Channel_P3 =32;
|
public const ushort Channel_P4 =33;
|
public const ushort Channel_P1E =34; //only used by DIO_PortConfig function
|
public const ushort Channel_P2E =35; //only used by DIO_PortConfig function
|
public const ushort Channel_P3E =36; //only used by DIO_PortConfig function
|
public const ushort Channel_P4E =37; //only used by DIO_PortConfig function
|
//7442
|
public const ushort P7442_CH0 = 0;
|
public const ushort P7442_CH1 = 1;
|
public const ushort P7442_TTL0 = 2;
|
public const ushort P7442_TTL1 = 3;
|
//-------- Constants for PCI-7300A -------------------
|
//Wait Status
|
public const ushort P7300_WAIT_NO =0;
|
public const ushort P7300_WAIT_TRG =1;
|
public const ushort P7300_WAIT_FIFO =2;
|
public const ushort P7300_WAIT_BOTH =3;
|
|
//Terminator control
|
public const ushort P7300_TERM_OFF =0;
|
public const ushort P7300_TERM_ON =1;
|
|
//DI control signals polarity for PCI-7300A Rev. B
|
public const ushort P7300_DIREQ_POS =0x00000000;
|
public const ushort P7300_DIREQ_NEG =0x00000001;
|
public const ushort P7300_DIACK_POS =0x00000000;
|
public const ushort P7300_DIACK_NEG =0x00000002;
|
public const ushort P7300_DITRIG_POS =0x00000000;
|
public const ushort P7300_DITRIG_NEG =0x00000004;
|
|
//DO control signals polarity for PCI-7300A Rev. B
|
public const ushort P7300_DOREQ_POS =0x00000000;
|
public const ushort P7300_DOREQ_NEG =0x00000008;
|
public const ushort P7300_DOACK_POS =0x00000000;
|
public const ushort P7300_DOACK_NEG =0x00000010;
|
public const ushort P7300_DOTRIG_POS =0x00000000;
|
public const ushort P7300_DOTRIG_NEG =0x00000020;
|
//-------- Constants for PCI-7432/7433/7434 ---------------
|
public const ushort PORT_DI_LOW =0;
|
public const ushort PORT_DI_HIGH =1;
|
public const ushort PORT_DO_LOW =0;
|
public const ushort PORT_DO_HIGH =1;
|
public const ushort P7432R_DO_LED =1;
|
public const ushort P7433R_DO_LED =0;
|
public const ushort P7434R_DO_LED =2;
|
public const ushort P7432R_DI_SLOT =1;
|
public const ushort P7433R_DI_SLOT =2;
|
public const ushort P7434R_DI_SLOT =0;
|
//-- Dual-Interrupt Source control for PCI-7248/96 & 7432/33 & 7230 & 8554 & 7396 &7256 &7260 ---
|
public const short INT1_DISABLE =-1; //INT1 Disabled
|
public const short INT1_COS =0; //INT1 COS : only available for PCI-7396, PCI-7256, PCI-7260
|
public const short INT1_FP1C0 =1; //INT1 by Falling edge of P1C0 : only available for PCI7248/96/7396
|
public const short INT1_RP1C0_FP1C3 =2; //INT1 by P1C0 Rising or P1C3 Falling : only available for PCI7248/96/7396
|
public const short INT1_EVENT_COUNTER =3; //INT1 by Event Counter down to zero : only available for PCI7248/96/7396
|
public const short INT1_EXT_SIGNAL =1; //INT1 by external signal : only available for PCI7432/7433/7230/8554
|
public const short INT1_COUT12 =1; //INT1 COUT12 : only available for PCI8554
|
public const short INT1_CH0 =1; //INT1 CH0 : only available for PCI7256, PCI7260
|
public const short INT1_COS0 =1; //INT1 COS0 : only available for PCI-7452/PCI-7442
|
public const short INT1_COS1 =2; //INT1 COS1 : only available for PCI-7452/PCI-7442
|
public const short INT1_COS2 =4; //INT1 COS2 : only available for PCI-7452/PCI-7442
|
public const short INT1_COS3 =8; //INT1 COS3 : only available for PCI-7452/PCI-7442
|
public const short INT2_DISABLE =-1; //INT2 Disabled
|
public const short INT2_COS =0; //INT2 COS : only available for PCI-7396
|
public const short INT2_FP2C0 =1; //INT2 by Falling edge of P2C0 : only available for PCI7248/96/7396
|
public const short INT2_RP2C0_FP2C3 =2; //INT2 by P2C0 Rising or P2C3 Falling : only available for PCI7248/96/7396
|
public const short INT2_TIMER_COUNTER =3; //INT2 by Timer Counter down to zero : only available for PCI7248/96/7396
|
public const short INT2_EXT_SIGNAL =1; //INT2 by external signal : only available for PCI7432/7433/7230/8554
|
public const short INT2_CH1 =2; //INT2 CH1 : only available for PCI7256, PCI7260
|
public const short INT2_WDT =4; //INT2 by WDT
|
|
public const ushort ManualResetIEvt =0x4000;//interrupt event is manually reset by user
|
public const ushort WDT_OVRFLOW_SAFETYOUT =0x8000;// enable safteyout while WDT overflow
|
//-------- Constants for PCI-8554 --------------------
|
//Clock Source of Cunter N
|
public const ushort ECKN =0;
|
public const ushort COUTN_1 =1;
|
public const ushort CK1 =2;
|
public const ushort COUT10 =3;
|
|
//Clock Source of CK1
|
public const ushort CK1_C8M =0;
|
public const ushort CK1_COUT11 =1;
|
|
//Debounce Clock
|
public const ushort DBCLK_COUT11 =0;
|
public const ushort DBCLK_2MHZ =1;
|
|
//-------- Constants for PCI-9111 --------------------
|
//Dual Interrupt Mode
|
public const ushort P9111_INT1_EOC =0; //Ending of AD conversion
|
public const ushort P9111_INT1_FIFO_HF =1; //FIFO Half Full
|
public const ushort P9111_INT2_PACER =0; //Every Timer tick
|
public const ushort P9111_INT2_EXT_TRG =1; //ExtTrig High->Low
|
|
//Channel Count
|
public const ushort P9111_CHANNEL_DO =0;
|
public const ushort P9111_CHANNEL_EDO =1;
|
public const ushort P9111_CHANNEL_DI =0;
|
public const ushort P9111_CHANNEL_EDI =1;
|
|
//EDO function
|
public const ushort P9111_EDO_INPUT =1; //EDO port set as Input port
|
public const ushort P9111_EDO_OUT_EDO =2; //EDO port set as Output port
|
public const ushort P9111_EDO_OUT_CHN =3; //EDO port set as channel number ouput port
|
|
//Trigger Mode
|
public const ushort P9111_TRGMOD_SOFT =0x00; //Software Trigger Mode
|
public const ushort P9111_TRGMOD_PRE =0x01; //Pre-Trigger Mode
|
public const ushort P9111_TRGMOD_POST =0x02; //Post Trigger Mode
|
|
//AO Setting
|
public const ushort P9111_AO_UNIPOLAR =0;
|
public const ushort P9111_AO_BIPOLAR =1;
|
|
//-------- Constants for PCI-9118 --------------------
|
public const ushort P9118_AI_BiPolar =0x00;
|
public const ushort P9118_AI_UniPolar =0x01;
|
|
public const ushort P9118_AI_SingEnded =0x00;
|
public const ushort P9118_AI_Differential =0x02;
|
|
public const ushort P9118_AI_ExtG =0x04;
|
|
public const ushort P9118_AI_ExtTrig =0x08;
|
|
public const ushort P9118_AI_DtrgNegative =0x00;
|
public const ushort P9118_AI_DtrgPositive =0x10;
|
|
public const ushort P9118_AI_EtrgNegative =0x00;
|
public const ushort P9118_AI_EtrgPositive =0x20;
|
|
public const ushort P9118_AI_BurstModeEn =0x40;
|
public const ushort P9118_AI_SampleHold =0x80;
|
public const ushort P9118_AI_PostTrgEn =0x100;
|
public const ushort P9118_AI_AboutTrgEn =0x200;
|
|
//-------- Constants for PCI-9116 --------------------
|
public const ushort P9116_AI_LocalGND =0x00;
|
public const ushort P9116_AI_UserCMMD =0x01;
|
public const ushort P9116_AI_SingEnded =0x00;
|
public const ushort P9116_AI_Differential =0x02;
|
public const ushort P9116_AI_BiPolar =0x00;
|
public const ushort P9116_AI_UniPolar =0x04;
|
|
public const ushort P9116_TRGMOD_SOFT =0x00; //Software Trigger Mode
|
public const ushort P9116_TRGMOD_POST =0x10; //Post Trigger Mode
|
public const ushort P9116_TRGMOD_DELAY =0x20; //Delay Trigger Mode
|
public const ushort P9116_TRGMOD_PRE =0x30; //Pre-Trigger Mode
|
public const ushort P9116_TRGMOD_MIDL =0x40; //Middle Trigger Mode
|
public const ushort P9116_AI_TrgPositive =0x00;
|
public const ushort P9116_AI_TrgNegative =0x80;
|
public const ushort P9116_AI_ExtTimeBase =0x100;
|
public const ushort P9116_AI_IntTimeBase =0x000;
|
public const ushort P9116_AI_DlyInSamples =0x200;
|
public const ushort P9116_AI_DlyInTimebase =0x000;
|
public const ushort P9116_AI_ReTrigEn =0x400;
|
public const ushort P9116_AI_MCounterEn =0x800;
|
public const ushort P9116_AI_SoftPolling =0x0000;
|
public const ushort P9116_AI_INT =0x1000;
|
public const ushort P9116_AI_DMA =0x2000;
|
|
//-------- Constants for PCI-9812 --------------------
|
//Trigger Mode
|
public const ushort P9812_TRGMOD_SOFT =0x00; //Software Trigger Mode
|
public const ushort P9812_TRGMOD_POST =0x01; //Post Trigger Mode
|
public const ushort P9812_TRGMOD_PRE =0x02; //Pre-Trigger Mode
|
public const ushort P9812_TRGMOD_DELAY =0x03; //Delay Trigger Mode
|
public const ushort P9812_TRGMOD_MIDL =0x04; //Middle Trigger Mode
|
|
public const ushort P9812_AIEvent_Manual =0x08; //Middle Trigger Mode
|
|
//Trigger Source
|
public const ushort P9812_TRGSRC_CH0 =0x00; //trigger source --CH0
|
public const ushort P9812_TRGSRC_CH1 =0x08; //trigger source --CH1
|
public const ushort P9812_TRGSRC_CH2 =0x10; //trigger source --CH2
|
public const ushort P9812_TRGSRC_CH3 =0x18; //trigger source --CH3
|
public const ushort P9812_TRGSRC_EXT_DIG =0x20; //External Digital Trigger
|
|
//Trigger Polarity
|
public const ushort P9812_TRGSLP_POS =0x00; //Positive slope trigger
|
public const ushort P9812_TRGSLP_NEG =0x40; //Negative slope trigger
|
|
//Frequency Selection
|
public const ushort P9812_AD2_GT_PCI =0x80; //Freq. of A/D clock > PCI clock freq.
|
public const ushort P9812_AD2_LT_PCI =0x00; //Freq. of A/D clock < PCI clock freq.
|
|
//Clock Source
|
public const ushort P9812_CLKSRC_INT =0x000; //Internal clock
|
public const ushort P9812_CLKSRC_EXT_SIN =0x100; //External SIN wave clock
|
public const ushort P9812_CLKSRC_EXT_DIG =0x200; //External Square wave clock
|
|
//EMG shdn ctrl code
|
public const ushort EMGSHDN_OFF =0; //off
|
public const ushort EMGSHDN_ON =1; //on
|
public const ushort EMGSHDN_RECOVERY =2; //recovery
|
|
//Hot Reset Hold ctrl code
|
public const ushort HRH_OFF =0; //off
|
public const ushort HRH_ON =1; //on
|
|
//-------- Timer/Counter -----------------------------
|
//Counter Mode (8254)
|
public const ushort TOGGLE_OUTPUT =0; //Toggle output from low to high on terminal count
|
public const ushort PROG_ONE_SHOT =1; //Programmable one-shot
|
public const ushort RATE_GENERATOR =2; //Rate generator
|
public const ushort SQ_WAVE_RATE_GENERATOR =3; //Square wave rate generator
|
public const ushort SOFT_TRIG =4; //Software-triggered strobe
|
public const ushort HARD_TRIG =5; //Hardware-triggered strobe
|
|
//General Purpose Timer/Counter
|
//Counter Mode
|
public const ushort General_Counter =0x00; //general counter
|
public const ushort Pulse_Generation =0x01; //pulse generation
|
//GPTC clock source
|
public const ushort GPTC_CLKSRC_EXT =0x08;
|
public const ushort GPTC_CLKSRC_INT =0x00;
|
public const ushort GPTC_GATESRC_EXT =0x10;
|
public const ushort GPTC_GATESRC_INT =0x00;
|
public const ushort GPTC_UPDOWN_SELECT_EXT =0x20;
|
public const ushort GPTC_UPDOWN_SELECT_SOFT =0x00;
|
public const ushort GPTC_UP_CTR =0x40;
|
public const ushort GPTC_DOWN_CTR =0x00;
|
public const ushort GPTC_ENABLE =0x80;
|
public const ushort GPTC_DISABLE =0x00;
|
|
//Watchdog Timer
|
//Counter action
|
public const ushort WDT_DISARM =0;
|
public const ushort WDT_ARM =1;
|
public const ushort WDT_RESTART =2;
|
|
//Pattern ID
|
public const ushort INIT_PTN =0;
|
public const ushort EMGSHDN_PTN =1;
|
|
//16-bit binary or 4-decade BCD counter
|
public const ushort BIN =0;
|
public const ushort BCD =1;
|
|
//Pattern ID for 7442
|
public const ushort INIT_PTN_CH0 = 0;
|
public const ushort INIT_PTN_CH1 =1;
|
public const ushort SAFTOUT_PTN_CH0 =4;
|
public const ushort SAFTOUT_PTN_CH1 =5;
|
|
//DAQ Event type for the event message
|
public const ushort AIEnd =0;
|
public const ushort DIEnd =0;
|
public const ushort DOEnd =0;
|
public const ushort DBEvent =1;
|
|
public const ushort RegBySlot=0x8000;
|
|
/*------------------------------------------------------------------
|
** PCIS-DASK Function prototype
|
------------------------------------------------------------------*/
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short Register_Card (ushort CardType, ushort card_num);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short Release_Card (ushort CardNumber);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short GetActualRate (ushort CardNumber, double fSampleRate, out double fActualRate);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short EMGShutDownControl (ushort CardNumber, byte ctrl);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short EMGShutDownStatus (ushort CardNumber, out byte sts);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short HotResetHoldControl(ushort wCardNumber, byte enable);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short HotResetHoldStatus(ushort wCardNumber, out byte sts);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short GetInitPattern (ushort CardNumber, byte patID, out uint pattern);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short SetInitPattern(ushort wCardNumber, byte patID, uint pattern);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short IdentifyLED_Control (ushort CardNumber, byte ctrl);
|
/*---------------------------------------------------------------------------*/
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_9111_Config (ushort CardNumber, ushort TrigSource, ushort TrgMode, ushort TraceCnt);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_9112_Config (ushort CardNumber, ushort TrigSource);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_9113_Config (ushort CardNumber, ushort TrigSource);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_9114_Config (ushort CardNumber, ushort TrigSource);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_9116_Config (ushort CardNumber, ushort ConfigCtrl, ushort TrigCtrl, ushort PostCnt, ushort MCnt, ushort ReTrgCnt);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_9118_Config (ushort CardNumber, ushort ModeCtrl, ushort FunCtrl, ushort BurstCnt, ushort PostCnt);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_9812_Config (ushort CardNumber, ushort TrgMode, ushort TrgSrc, ushort TrgPol, ushort ClkSel, ushort TrgLevel, ushort PostCnt);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_9812_SetDiv (ushort wCardNumber, uint PacerVal);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_9114_PreTrigConfig (ushort CardNumber, ushort PreTrgEn, ushort TraceCnt);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_9116_CounterInterval (ushort wCardNumber, uint ScanIntrv, uint SampIntrv);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_InitialMemoryAllocated (ushort CardNumber, out uint MemSize);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_ReadChannel (ushort CardNumber, ushort Channel, ushort AdRange, out ushort Value);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_VReadChannel (ushort CardNumber, ushort Channel, ushort AdRange, out double voltage);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_VoltScale (ushort CardNumber, ushort AdRange, ushort reading, out double voltage);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_ContReadChannel (ushort CardNumber, ushort Channel, ushort AdRange,
|
ushort[] Buffer, uint ReadCount, double SampleRate, ushort SyncMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_ContReadMultiChannels (ushort CardNumber, ushort NumChans, ushort[] Chans,
|
ushort[] AdRanges, ushort[] Buffer, uint ReadCount,
|
double SampleRate, ushort SyncMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_ContScanChannels (ushort CardNumber, ushort Channel, ushort AdRange,
|
ushort[] Buffer, uint ReadCount, double SampleRate, ushort SyncMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_ContReadChannelToFile (ushort CardNumber, ushort Channel, ushort AdRange,
|
string FileName, uint ReadCount, double SampleRate, ushort SyncMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_ContReadMultiChannelsToFile (ushort CardNumber, ushort NumChans, ushort[] Chans,
|
ushort[] AdRanges, string[] FileName, uint ReadCount,
|
double SampleRate, ushort SyncMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_ContScanChannelsToFile (ushort CardNumber, ushort Channel, ushort AdRange,
|
string FileName, uint ReadCount, double SampleRate, ushort SyncMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_ContStatus (ushort CardNumber, out ushort Status);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_ContVScale (ushort wCardNumber, ushort adRange, ushort[] readingArray, double[] voltageArray, int count);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_AsyncCheck(ushort CardNumber, out byte Stopped, out uint AccessCnt);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_AsyncClear (ushort CardNumber, out uint AccessCnt);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_AsyncDblBufferHalfReady(ushort CardNumber, out byte HalfReady, out byte StopFlag);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_AsyncDblBufferMode (ushort CardNumber, bool Enable);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_AsyncDblBufferTransfer (ushort CardNumber, ushort[] Buffer);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_AsyncDblBufferOverrun (ushort CardNumber, ushort op, out ushort overrunFlag);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_EventCallBack(ushort CardNumber, ushort mode, ushort EventType, MulticastDelegate callbackAddr);
|
/*---------------------------------------------------------------------------*/
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AO_6208A_Config (ushort CardNumber, ushort V2AMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AO_6308A_Config (ushort CardNumber, ushort V2AMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AO_6308V_Config (ushort wCardNumber, ushort Channel, ushort wOutputPolarity, double refVoltage);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AO_9111_Config (ushort CardNumber, ushort OutputPolarity);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AO_9112_Config (ushort CardNumber, ushort Channel, double refVoltage);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AO_WriteChannel (ushort CardNumber, ushort Channel, short Value);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AO_VWriteChannel (ushort CardNumber, ushort Channel, double Voltage);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AO_VoltScale (ushort CardNumber, ushort Channel, double Voltage, out short binValue);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AO_SimuWriteChannel (ushort wCardNumber, ushort wGroup, short[] pwBuffer);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AO_SimuVWriteChannel (ushort wCardNumber, ushort wGroup, double[] VBuffer);
|
/*---------------------------------------------------------------------------*/
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_7200_Config (ushort CardNumber, ushort TrigSource, ushort ExtTrigEn, ushort TrigPol, ushort I_REQ_Pol);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_7300A_Config (ushort CardNumber, ushort PortWidth, ushort TrigSource, ushort WaitStatus, ushort Terminator, ushort I_REQ_Pol, bool clear_fifo, bool disable_di);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_7300B_Config (ushort CardNumber, ushort PortWidth, ushort TrigSource, ushort WaitStatus, ushort Terminator, ushort I_Cntrl_Pol, bool clear_fifo, bool disable_di);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_InitialMemoryAllocated (ushort CardNumber, out uint DmaSize);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_ReadLine (ushort CardNumber, ushort Port, ushort Line, out ushort State);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_ReadPort (ushort CardNumber, ushort Port, out uint Value);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_ContReadPort (ushort CardNumber, ushort Port, byte[] Buffer,
|
uint ReadCount, double SampleRate, ushort SyncMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_ContReadPort (ushort CardNumber, ushort Port, ushort[] Buffer,
|
uint ReadCount, double SampleRate, ushort SyncMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_ContReadPort(ushort CardNumber, ushort Port, uint[] Buffer,
|
uint ReadCount, double SampleRate, ushort SyncMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_ContReadPortToFile (ushort CardNumber, ushort Port, string FileName,
|
uint ReadCount, double SampleRate, ushort SyncMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_ContStatus (ushort CardNumber, out ushort Status);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_AsyncCheck (ushort CardNumber, out byte Stopped, out uint AccessCnt);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_AsyncClear (ushort CardNumber, out uint AccessCnt);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_AsyncDblBufferHalfReady(ushort CardNumber, out byte HalfReady);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_AsyncDblBufferMode (ushort CardNumber, bool Enable);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_AsyncDblBufferTransfer (ushort CardNumber, byte[] Buffer);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_AsyncDblBufferTransfer (ushort CardNumber, short[] Buffer);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_AsyncDblBufferTransfer(ushort CardNumber, uint[] Buffer);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_ContMultiBufferSetup (ushort wCardNumber, byte[] pwBuffer, uint dwReadCount, out ushort BufferId);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_ContMultiBufferSetup (ushort wCardNumber, short[] pwBuffer, uint dwReadCount, out ushort BufferId);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_ContMultiBufferSetup(ushort wCardNumber, uint[] pwBuffer, uint dwReadCount, out ushort BufferId);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_ContMultiBufferStart (ushort wCardNumber, ushort wPort, double fSampleRate);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_AsyncMultiBufferNextReady(ushort CardNumber, out byte bNextReady, out ushort wBufferId);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_AsyncDblBufferOverrun (ushort CardNumber, ushort op, out ushort overrunFlag);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_EventCallBack(ushort CardNumber, short mode, short EventType, MulticastDelegate callbackAddr);
|
/*---------------------------------------------------------------------------*/
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_7200_Config (ushort CardNumber, ushort TrigSource, ushort OutReqEn, ushort OutTrigSig);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_7300A_Config (ushort CardNumber, ushort PortWidth, ushort TrigSource, ushort WaitStatus, ushort Terminator, ushort O_REQ_Pol);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_7300B_Config (ushort CardNumber, ushort PortWidth, ushort TrigSource, ushort WaitStatus, ushort Terminator, ushort O_Cntrl_Pol, uint FifoThreshold);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_InitialMemoryAllocated (ushort CardNumber, out uint MemSize);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_WriteLine (ushort CardNumber, ushort Port, ushort Line, ushort Value);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_WritePort (ushort CardNumber, byte Port, uint Value);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_WritePort (ushort CardNumber, ushort Port, uint Value);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_WritePort(ushort CardNumber, uint Port, uint Value);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_WriteExtTrigLine (ushort CardNumber, ushort Value);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_ReadLine (ushort CardNumber, ushort Port, ushort Line, out ushort Value);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_ReadPort (ushort CardNumber, ushort Port, out uint Value);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_ContWritePort (ushort CardNumber, ushort Port, byte[] Buffer,
|
uint WriteCount, ushort Iterations, double SampleRate, ushort SyncMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_ContWritePort (ushort CardNumber, ushort Port, ushort[] Buffer,
|
uint WriteCount, ushort Iterations, double SampleRate, ushort SyncMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_ContWritePort (ushort CardNumber, ushort Port, uint[] Buffer,
|
uint WriteCount, ushort Iterations, double SampleRate, ushort SyncMode);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_PGStart (ushort CardNumber, byte[] Buffer, uint WriteCount, double SampleRate);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_PGStart (ushort CardNumber, short[] Buffer, uint WriteCount, double SampleRate);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_PGStart(ushort CardNumber, uint[] Buffer, uint WriteCount, double SampleRate);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_PGStop (ushort CardNumber);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_ContStatus (ushort CardNumber, out ushort Status);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_AsyncCheck(ushort CardNumber, out byte Stopped, out uint AccessCnt);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_AsyncClear (ushort CardNumber, out uint AccessCnt);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short EDO_9111_Config (ushort CardNumber, ushort EDO_Fun);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_ContMultiBufferSetup (ushort CardNumber, byte[] pwBuffer, uint dwWriteCount, out ushort BufferId);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_ContMultiBufferSetup (ushort CardNumber, short[] pwBuffer, uint dwWriteCount, out ushort BufferId);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_ContMultiBufferSetup(ushort CardNumber, uint[] pwBuffer, uint dwWriteCount, out ushort BufferId);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_AsyncMultiBufferNextReady(ushort CardNumber, out byte bNextReady, out ushort wBufferId);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_ContMultiBufferStart (ushort wCardNumber, ushort wPort, double fSampleRate);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_EventCallBack(ushort CardNumber, short mode, short EventType, MulticastDelegate callbackAddr);
|
/*---------------------------------------------------------------------------*/
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DIO_PortConfig (ushort CardNumber, ushort Port, ushort Direction);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DIO_LinesConfig(ushort wCardNumber, ushort wPort, ushort wLinesdirmap);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DIO_LineConfig(ushort wCardNumber, ushort wPort, ushort wLine, ushort wDirection);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DIO_SetDualInterrupt (ushort CardNumber, short Int1Mode, short Int2Mode, long hEvent);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DIO_SetCOSInterrupt (ushort CardNumber, ushort Port, ushort ctlA, ushort ctlB, ushort ctlC);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DIO_INT1_EventMessage(ushort CardNumber, short Int1Mode, long windowHandle, long message, MulticastDelegate callbackAddr);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DIO_INT2_EventMessage(ushort CardNumber, short Int2Mode, long windowHandle, long message, MulticastDelegate callbackAddr);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DIO_7300SetInterrupt (ushort CardNumber, short AuxDIEn, short T2En, long hEvent);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DIO_AUXDI_EventMessage(ushort CardNumber, short AuxDIEn, long windowHandle, uint message, MulticastDelegate callbackAddr);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DIO_T2_EventMessage(ushort CardNumber, short T2En, long windowHandle, uint message, MulticastDelegate callbackAddr);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DIO_GetCOSLatchData(ushort wCardNumber, out ushort CosLData);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DIO_SetCOSInterrupt32(ushort wCardNumber, byte Port, uint ctl, out long hEvent, bool bManualReset);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DIO_GetCOSLatchDataInt32(ushort wCardNumber, byte Port, out uint CosLData);
|
/*---------------------------------------------------------------------------*/
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short CTR_Setup (ushort CardNumber, ushort Ctr, ushort Mode, uint Count, ushort BinBcd);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short CTR_Clear (ushort CardNumber, ushort Ctr, ushort State);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short CTR_Read (ushort CardNumber, ushort Ctr, out uint Value);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short CTR_Update (ushort CardNumber, ushort Ctr, uint Count);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short CTR_8554_ClkSrc_Config (ushort CardNumber, ushort Ctr, ushort ClockSource);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short CTR_8554_CK1_Config (ushort CardNumber, ushort ClockSource);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short CTR_8554_Debounce_Config (ushort CardNumber, ushort DebounceClock);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short GCTR_Setup (ushort wCardNumber, ushort wGCtr, ushort wGCtrCtrl,uint dwCount);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short GCTR_Clear (ushort wCardNumber, ushort wGCtr);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short GCTR_Read (ushort wCardNumber, ushort wGCtr, out uint pValue);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short WDT_Setup (ushort CardNumber, ushort wCtr, float ovflowSec, out float actualSec, out long hEvent);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short WDT_Control (ushort wCardNumber, ushort wCtr, ushort action);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short WDT_Status (ushort wCardNumber, ushort Ctr, out uint pValue);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short WDT_Reload(ushort wCardNumber, float ovflowSec, out float actualSec);
|
/*---------------------------------------------------------------------------*/
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_GetEvent(ushort wCardNumber, out long hEvent);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AO_GetEvent(ushort wCardNumber, out long hEvent);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_GetEvent(ushort wCardNumber, out long hEvent);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_GetEvent(ushort wCardNumber, out long hEvent);
|
/*---------------------------------------------------------------------------*/
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short AI_GetView(ushort wCardNumber, uint[] pView);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DI_GetView(ushort wCardNumber, uint[] pView);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short DO_GetView(ushort wCardNumber, uint[] pView);
|
/*---------------------------------------------------------------------------*/
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short GetCardType (ushort wCardNumber, out ushort cardType);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short GetCardIndexFromID (ushort wCardNumber, out ushort cardType, out ushort cardIndex);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short GetBaseAddr(ushort wCardNumber, uint[] BaseAddr, uint[] BaseAddr2);
|
[DllImport("PCI-Dask64.dll")]
|
public static extern short GetLCRAddr(ushort wCardNumber, uint[] LcrAddr);
|
}
|