96 lines
2.8 KiB
C
96 lines
2.8 KiB
C
|
#ifndef CONTROLCAN_H
|
|||
|
#define CONTROLCAN_H
|
|||
|
|
|||
|
////<2F>ļ<EFBFBD><C4BC>汾<EFBFBD><E6B1BE>v2.01 20190410
|
|||
|
//#include <cvidef.h> //ʹ<><CAB9>CVIƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ø<EFBFBD><C3B8><EFBFBD><EFBFBD>䡣
|
|||
|
|
|||
|
//<2F>ӿڿ<D3BF><DABF><EFBFBD><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD>
|
|||
|
|
|||
|
#define VCI_USBCAN1 3
|
|||
|
#define VCI_USBCAN2 4
|
|||
|
#define VCI_USBCAN2A 4
|
|||
|
|
|||
|
#define VCI_USBCAN_E_U 20
|
|||
|
#define VCI_USBCAN_2E_U 21
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><C3B7><EFBFBD>״ֵ̬
|
|||
|
#define STATUS_OK 1
|
|||
|
#define STATUS_ERR 0
|
|||
|
|
|||
|
/*------------------------------------------------<2D><><EFBFBD><EFBFBD>ZLG<4C>ĺ<EFBFBD><C4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>------------------------------------------------*/
|
|||
|
//1.ZLGCANϵ<4E>нӿڿ<D3BF><DABF><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͡<EFBFBD>
|
|||
|
typedef struct _VCI_BOARD_INFO{
|
|||
|
USHORT hw_Version;
|
|||
|
USHORT fw_Version;
|
|||
|
USHORT dr_Version;
|
|||
|
USHORT in_Version;
|
|||
|
USHORT irq_Num;
|
|||
|
BYTE can_Num;
|
|||
|
CHAR str_Serial_Num[20];
|
|||
|
CHAR str_hw_Type[40];
|
|||
|
USHORT Reserved[4];
|
|||
|
} VCI_BOARD_INFO,*PVCI_BOARD_INFO;
|
|||
|
|
|||
|
//2.<2E><><EFBFBD><EFBFBD>CAN<41><4E>Ϣ֡<CFA2><D6A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͡<EFBFBD>
|
|||
|
typedef struct _VCI_CAN_OBJ{
|
|||
|
UINT ID;
|
|||
|
UINT TimeStamp;
|
|||
|
BYTE TimeFlag;
|
|||
|
BYTE SendType;
|
|||
|
BYTE RemoteFlag;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD>Զ<EFBFBD><D4B6>֡
|
|||
|
BYTE ExternFlag;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>չ֡
|
|||
|
BYTE DataLen;
|
|||
|
BYTE Data[8];
|
|||
|
BYTE Reserved[3];
|
|||
|
}VCI_CAN_OBJ,*PVCI_CAN_OBJ;
|
|||
|
|
|||
|
//3.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>CAN<41><4E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
typedef struct _VCI_INIT_CONFIG{
|
|||
|
DWORD AccCode;
|
|||
|
DWORD AccMask;
|
|||
|
DWORD Reserved;
|
|||
|
UCHAR Filter;
|
|||
|
UCHAR Timing0;
|
|||
|
UCHAR Timing1;
|
|||
|
UCHAR Mode;
|
|||
|
}VCI_INIT_CONFIG,*PVCI_INIT_CONFIG;
|
|||
|
|
|||
|
///////// new add struct for filter /////////
|
|||
|
typedef struct _VCI_FILTER_RECORD{
|
|||
|
DWORD ExtFrame; //<2F>Ƿ<EFBFBD>Ϊ<EFBFBD><CEAA>չ֡
|
|||
|
DWORD Start;
|
|||
|
DWORD End;
|
|||
|
}VCI_FILTER_RECORD,*PVCI_FILTER_RECORD;
|
|||
|
|
|||
|
#define EXTERNC extern "C"
|
|||
|
|
|||
|
EXTERNC DWORD __stdcall VCI_OpenDevice(DWORD DeviceType,DWORD DeviceInd,DWORD Reserved);
|
|||
|
EXTERNC DWORD __stdcall VCI_CloseDevice(DWORD DeviceType,DWORD DeviceInd);
|
|||
|
EXTERNC DWORD __stdcall VCI_InitCAN(DWORD DeviceType, DWORD DeviceInd, DWORD CANInd, PVCI_INIT_CONFIG pInitConfig);
|
|||
|
|
|||
|
EXTERNC DWORD __stdcall VCI_ReadBoardInfo(DWORD DeviceType,DWORD DeviceInd,PVCI_BOARD_INFO pInfo);
|
|||
|
|
|||
|
EXTERNC DWORD __stdcall VCI_SetReference(DWORD DeviceType,DWORD DeviceInd,DWORD CANInd,DWORD RefType,PVOID pData);
|
|||
|
|
|||
|
EXTERNC ULONG __stdcall VCI_GetReceiveNum(DWORD DeviceType,DWORD DeviceInd,DWORD CANInd);
|
|||
|
EXTERNC DWORD __stdcall VCI_ClearBuffer(DWORD DeviceType,DWORD DeviceInd,DWORD CANInd);
|
|||
|
|
|||
|
EXTERNC DWORD __stdcall VCI_StartCAN(DWORD DeviceType,DWORD DeviceInd,DWORD CANInd);
|
|||
|
EXTERNC DWORD __stdcall VCI_ResetCAN(DWORD DeviceType,DWORD DeviceInd,DWORD CANInd);
|
|||
|
|
|||
|
EXTERNC ULONG __stdcall VCI_Transmit(DWORD DeviceType,DWORD DeviceInd,DWORD CANInd,PVCI_CAN_OBJ pSend,ULONG Len);
|
|||
|
EXTERNC ULONG __stdcall VCI_Receive(DWORD DeviceType,DWORD DeviceInd,DWORD CANInd,PVCI_CAN_OBJ pReceive,ULONG Len,INT WaitTime);
|
|||
|
|
|||
|
|
|||
|
/*------------------------------------------------<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>亯<EFBFBD><E4BAAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽṹ<DDBD><E1B9B9><EFBFBD><EFBFBD>------------------------------------------------*/
|
|||
|
|
|||
|
|
|||
|
#define EXTERNC extern "C"
|
|||
|
|
|||
|
EXTERNC DWORD __stdcall VCI_UsbDeviceReset(DWORD DevType,DWORD DevIndex,DWORD Reserved);
|
|||
|
EXTERNC DWORD __stdcall VCI_FindUsbDevice2(PVCI_BOARD_INFO pInfo);
|
|||
|
|
|||
|
#endif
|