📄 drivce.h
字号:
DWORD Milliseconds;
} PT_CheckEvent, FAR * LPT_CheckEvent;
typedef struct tagPT_EnableCANEvent
{
USHORT EventType;
USHORT Enabled;
CHAR APEventName[15];
} PT_EnableCANEvent, FAR * LPT_EnableCANEvent;
typedef struct tagPT_GetCANEventData
{
USHORT far *EventType;
USHORT far *PortNum;
USHORT far *MacID;
CHAR Data[8];
} PT_GetCANEventData, FAR * LPT_GetCANEventData;
typedef struct tagPT_AllocateDMABuffer
{
USHORT CyclicMode;
ULONG RequestBufSize;
ULONG far * ActualBufSize;
LONG far * buffer;
} PT_AllocateDMABuffer, FAR * LPT_AllocateDMABuffer;
typedef struct tagPT_TimerCountSetting
{
USHORT counter;
ULONG Count;
} PT_TimerCountSetting, FAR * LPT_TimerCountSetting;
typedef struct tagPT_DIFilter
{
USHORT usEventType;
USHORT usEventEnable;
USHORT usCount;
USHORT usEnable; // Filter enable data
USHORT far * usHiValue; // Filter value array pointer
USHORT far * usLowValue;
} PT_DIFilter, FAR * LPT_DIFilter;
typedef struct tagPT_DIPattern
{
USHORT usEventType;
USHORT usEventEnable;
USHORT usCount;
USHORT usEnable; // Pattern Match enable data
USHORT usValue; // Pattern Match pre_setting value;
} PT_DIPattern, FAR * LPT_DIPattern;
typedef struct tagPT_DICounter
{
USHORT usEventType;
USHORT usEventEnable;
USHORT usCount;
USHORT usEnable; // Counter enable data
USHORT usTrigEdge; // Counter Trigger edge 0: Rising edge 1:Falling edge
USHORT far * usPreset; // counter pre_setting value
USHORT usMatchEnable;// counter match enable data
USHORT far * usValue; // counter match value
USHORT usOverflow; // counter overflow data
USHORT usDirection; // up/down counter direction
} PT_DICounter, FAR * LPT_DICounter;
typedef struct tagPT_Status
{
USHORT usEventType;
USHORT usEventEnable;
USHORT usCount;
USHORT usEnable; // status change enable data
USHORT usRisingedge; // record Rising edge trigger type
USHORT usFallingedge;// record Falling edge trigger type
} PT_DIStatus, FAR * LPT_DIStatus;
typedef union tagPT_EnableEventEx
{
PT_DIFilter Filter;
PT_DIPattern Pattern;
PT_DICounter Counter;
PT_DIStatus Status;
} PT_EnableEventEx, FAR * LPT_EnableEventEx;
//typedef struct tagPT_EnableEventEx
//{
// USHORT usEventType;
// USHORT usEventEnable;
// USHORT usCount;
// PT_EventST EventST;
//
//} PT_EnableEventEx, FAR * LPT_EnableEventEx;
typedef struct tagPT_CounterPWMSetting
{
USHORT Port; //counter port
FLOAT Period; //ms
FLOAT HiPeriod; //UpCycle period ms
ULONG OutCount; //Stop count
USHORT GateMode;
} PT_CounterPWMSetting, FAR * LPT_CounterPWMSetting;
typedef struct tagPT_DioTimerSetting
{
USHORT Port;
USHORT TimeronEnable;
USHORT TimeroffEnable;
USHORT far * OnDuration; //Timer on duration
USHORT far * OffDuration; //Timer off duration
} PT_DioTimerSetting, FAR * LPT_DioTimerSetting;
typedef struct tagPT_FDITransfer
{
USHORT usEventType;
ULONG far * ulRetData;
} PT_FDITransfer, FAR * LPT_FDITransfer;
typedef struct tagPT_AOCurrentOut
{
USHORT chan;
FLOAT OutputValue;
} PT_AOCurrentOut, FAR * LPT_AOCurrentOut;
typedef struct tagPT_ADAMCounterSetHWConfig
{
USHORT usCounterMode;
USHORT usDataFormat; // Only for adam5080
USHORT usGateTime; // Only for adam4080,4080D
} PT_ADAMCounterSetHWConfig, FAR * LPT_ADAMCounterSetHWConfig;
typedef struct tagPT_ADAMCounterGetHWConfig
{
USHORT far *usCounterMode;
USHORT far *usDataFormat; // Only for adam5080
USHORT far *usGateTime; // Only for adam4080,4080D
} PT_ADAMCounterGetHWConfig, FAR * LPT_ADAMCounterGetHWConfig;
typedef struct tagPT_ADAMAISetHWConfig
{
USHORT usInputRange;
USHORT usDataFormat;
USHORT usIntegrationTime;
} PT_ADAMAISetHWConfig, FAR * LPT_ADAMAISetHWConfig;
typedef struct tagPT_ADAMAIGetHWConfig
{
USHORT far *usInputRange;
USHORT far *usDataFormat;
USHORT far *usIntegrationTime;
} PT_ADAMAIGetHWConfig, FAR * LPT_ADAMAIGetHWConfig;
typedef struct tagPT_ADAMAOSetHWConfig
{
USHORT usChan;
USHORT usOutputRange;
USHORT usDataFormat;
USHORT usSlewRate;
} PT_ADAMAOSetHWConfig, FAR * LPT_ADAMAOSetHWConfig;
typedef struct tagPT_ADAMAOGetHWConfig
{
USHORT usChan;
USHORT far *usOutputRange;
USHORT far *usDataFormat;
USHORT far *usSlewRate;
} PT_ADAMAOGetHWConfig, FAR * LPT_ADAMAOGetHWConfig;
typedef struct tagPT_PWMStartRead
{
USHORT usChan;
FLOAT far *flHiperiod;
FLOAT far *flLowperiod;
}PT_PWMStartRead, FAR * LPT_PWMStartRead;
typedef struct tagPT_FAIDmaExStart
{
USHORT TrigSrc; //Trigger source : internal,external
USHORT TrigMode; //Trigger Mode : Pacer, Post, Delay, About
USHORT ClockSrc; //Clock source : internel, external
USHORT TrigEdge; //Trigger Edge : Rise 0 Fall 1
USHORT SRCType; //Source type : Digtal 0, Analog
FLOAT TrigVol; //Analog Trigger type Trigger voltage
USHORT CyclicMode; //Cyclic, noncyclic
USHORT NumChans; //Scan number of channel
USHORT StartChan; //Start channel
ULONG ulDelayCnt; //Delay count
ULONG count; //Number of sample
ULONG SampleRate; //Sampling rate
USHORT *GainList; //Gain code list
USHORT *CondList; //Trigger condition
TRIGLEVEL *LevelList; //Trigger level
USHORT *buffer0; //Buffer pointer
USHORT *buffer1; //Buffer pointer
USHORT *Pt1; //Reserve parameter
USHORT *Pt2; //Reserve Parameter
USHORT *Pt3; //Reserve Parameter
}PT_FAIDmaExStart, *LPT_FAIDmaExStart;
typedef struct tagPT_FAOWaveFormStart
{
USHORT TrigSrc;
DWORD SampleRate;
ULONG WaveCount;
ULONG Count;
USHORT far * Buffer;
USHORT EnabledChannel;
} PT_FAOWaveFormStart, FAR * LPT_FAOWaveFormStart;
/**************************************************************************
Function Declaration
***************************************************************************/
#if !defined(_WIN31)
#define FEXPORT __declspec (dllexport)
#define FTYPE CALLBACK
#else
#define FEXPORT extern
#define FTYPE FAR PASCAL
#endif
/**************************************************************************
Function Declaration
***************************************************************************/
FEXPORT LRESULT FTYPE DeviceConfig(ULONG DeviceNum,DWORD BoardID,HWND owner);
FEXPORT LRESULT FTYPE DeviceOpen(ULONG DeviceNum, LONG far * DeviceHandle);
FEXPORT LRESULT FTYPE DeviceClose(LONG far * DeviceHandle);
FEXPORT LRESULT FTYPE DeviceGetFeatures(LONG DeviceHandle,
DEVFEATURES far * buffer, USHORT size);
FEXPORT LRESULT FTYPE AIConfig(LONG DeviceHandle,USHORT DasChan,
USHORT DasGain);
FEXPORT LRESULT FTYPE AIGetConfig(LONG DeviceHandle,LPDEVCONFIG_AI buffer,
USHORT size);
FEXPORT LRESULT FTYPE AIBinaryIn(LONG DeviceHandle,USHORT chan,
USHORT TrigMode,USHORT far * reading);
FEXPORT LRESULT FTYPE AIScale(USHORT reading,FLOAT MaxVolt,USHORT MaxCount,
USHORT offset,FLOAT far * voltage);
FEXPORT LRESULT FTYPE AIVoltageIn(LONG DeviceHandle,USHORT chan,
USHORT gain,USHORT TrigMode,FLOAT far * voltage);
FEXPORT LRESULT FTYPE AIVoltageInExp(LONG DeviceHandle,USHORT DasChan,
USHORT DasGain,USHORT ExpChan,FLOAT far * voltage);
FEXPORT LRESULT FTYPE MAIConfig(LONG DeviceHandle,USHORT NumChan,
USHORT StartChan,USHORT far * GainArray);
FEXPORT LRESULT FTYPE MAIBinaryIn(LONG DeviceHandle,USHORT NumChan,
USHORT StartChan,USHORT TrigMode,USHORT far * ReadingArray);
FEXPORT LRESULT FTYPE MAIVoltageIn(LONG DeviceHandle,USHORT NumChan,
USHORT StartChan,USHORT far * GainArray,
USHORT TrigMode,FLOAT far * VoltageArray);
FEXPORT LRESULT FTYPE MAIVoltageInExp(LONG DeviceHandle,USHORT NumChan,
USHORT far * DasChanArray,USHORT far * DasGainArray,
USHORT far * ExpChanArray,FLOAT far * VoltageArray);
FEXPORT LRESULT FTYPE TCMuxRead(LONG DeviceHandle,USHORT DasChan,
USHORT DasGain,USHORT ExpChan,USHORT TCType,
USHORT TempScale,FLOAT far * temp);
FEXPORT LRESULT FTYPE AOConfig(LONG DeviceHandle,USHORT chan,USHORT RefSrc,
FLOAT MaxValue,FLOAT MinValue);
FEXPORT LRESULT FTYPE AOBinaryOut(LONG DeviceHandle,USHORT chan,USHORT BinData);
FEXPORT LRESULT FTYPE AOVoltageOut(LONG DeviceHandle,USHORT chan,FLOAT OutputValue);
FEXPORT LRESULT FTYPE AOScale(LONG DeviceHandle,USHORT chan,FLOAT OutputValue,
USHORT far * BinData);
FEXPORT LRESULT FTYPE DioSetPortMode(LONG DeviceHandle,USHORT port,
USHORT dir);
FEXPORT LRESULT FTYPE DioGetConfig(LONG DeviceHandle,SHORT far * PortArray,
USHORT NumOfPorts);
FEXPORT LRESULT FTYPE DioReadPortByte(LONG DeviceHandle,USHORT port,
USHORT far * value);
FEXPORT LRESULT FTYPE DioWritePortByte(LONG DeviceHandle,USHORT port,
USHORT mask,USHORT state);
FEXPORT LRESULT FTYPE DioReadBit(LONG DeviceHandle,USHORT port,USHORT bit,
USHORT far * state);
FEXPORT LRESULT FTYPE DioWriteBit(LONG DeviceHandle,USHORT port,USHORT bit,
USHORT state);
FEXPORT LRESULT FTYPE DioGetCurrentDOByte(LONG DeviceHandle,USHORT port,
USHORT far * value);
FEXPORT LRESULT FTYPE DioGetCurrentDOBit(LONG DeviceHandle,USHORT port,
USHORT bit,USHORT far * state);
FEXPORT LRESULT FTYPE WritePortByte(LONG DeviceHandle,USHORT port,
USHORT ByteData);
FEXPORT LRESULT FTYPE WritePortWord(LONG DeviceHandle,USHORT port,
USHORT WordData);
FEXPORT LRESULT FTYPE ReadPortByte(LONG DeviceHandle,USHORT port,
USHORT far * ByteData);
FEXPORT LRESULT FTYPE ReadPortWord(LONG DeviceHandle,USHORT port,
USHORT far * WordData);
FEXPORT LRESULT FTYPE CounterEventStart(LONG DeviceHandle,USHORT counter,
USHORT GateMode);
FEXPORT LRESULT FTYPE CounterEventRead(LONG DeviceHandle,USHORT counter,
USHORT far * overflow,ULONG far * count);
FEXPORT LRESULT FTYPE CounterFreqStart(LONG DeviceHandle,USHORT counter,
USHORT GatePeriod,USHORT GateMode);
FEXPORT LRESULT FTYPE CounterFreqRead(LONG DeviceHandle,USHORT counter,
FLOAT far * freq);
FEXPORT LRESULT FTYPE CounterPulseStart(LONG DeviceHandle,USHORT counter,
FLOAT period,FLOAT UpCycle,USHORT GateMode);
FEXPORT LRESULT FTYPE CounterReset(LONG DeviceHandle,USHORT counter);
FEXPORT LRESULT FTYPE QCounterConfig(LONG DeviceHandle,USHORT counter,
USHORT LatchSrc,USHORT LatchOverflow,USHORT ResetOnLatch,
USHORT ResetValue);
FEXPORT LRESULT FTYPE QCounterConfigSys(LONG DeviceHandle,USHORT SysClock,
USHORT TimeBase, USHORT TimeDivider,USHORT CascadeMode);
FEXPORT LRESULT FTYPE QCounterStart(LONG DeviceHandle,USHORT counter,
USHORT InputMode);
FEXPORT LRESULT FTYPE QCounterRead(LONG DeviceHandle,USHORT counter,
USHORT far * overflow,ULONG far * LoCount,
ULONG far * HiCount);
FEXPORT LRESULT FTYPE AlarmConfig(LONG DeviceHandle,USHORT chan,
FLOAT LoLimit,FLOAT HiLimit);
FEXPORT LRESULT FTYPE AlarmEnable(LONG DeviceHandle,USHORT chan,
USHORT LatchMode,USHORT enabled);
FEXPORT LRESULT FTYPE AlarmCheck(LONG DeviceHandle,USHORT chan,
USHORT far * LoState,USHORT far * HiState);
FEXPORT LRESULT FTYPE AlarmReset(LONG DeviceHandle,USHORT chan);
FEXPORT LRESULT FTYPE COMOpen(USHORT PortNum, LONG far * ComHandle,
LONG far * DeviceHandle);
FEXPORT LRESULT FTYPE COMClose(LONG far * DeviceHandle);
FEXPORT LRESULT FTYPE COMGetConfig(ULONG DeviceNum, LPDEVCONFIG_COM buffer);
FEXPORT LRESULT FTYPE COMSetConfig(LONG DeviceHandle, LPDEVCONFIG_COM buffer);
FEXPORT LRESULT FTYPE COMRead(LONG DeviceHandle, LPSTR buffer,
USHORT BufferSize, USHORT TimeOut, CHAR FinalChar,
USHORT far * ReadCount);
FEXPORT LRESULT FTYPE COMReadEx(LONG DeviceHandle, LPSTR buffer,
USHORT BufferSize, USHORT TimeOut, CHAR FinalChar,
USHORT far * ReadCount);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -