#ifdef I87124DLLEXPORT #define EXP extern "C" __declspec(dllexport) #else #define EXP extern "C" __declspec(dllimport) #endif EXP HANDLE hBackplane; //Module Functions EXP DWORD CALLBACK I87124_TotalI87124Module(BYTE *TotalModules ,BYTE *SlotNoList); EXP DWORD CALLBACK I87124_ActiveModule(void); EXP DWORD CALLBACK I87124_CloseModule(void); EXP DWORD CALLBACK I87124_GetDLLVersion(void); EXP HANDLE CALLBACK I87124_GetBackplaneHandle(void); //20100713 //Firmware Functions EXP DWORD CALLBACK I87124_GetFirmwareVersion(BYTE cSlot); EXP DWORD CALLBACK I87124_ResetFirmware(BYTE cSlot); //Master Operating Functions EXP DWORD CALLBACK I87124_GetMasterMACID(BYTE cSlot); EXP DWORD CALLBACK I87124_SetMasterMACID(BYTE cSlot,BYTE MasterMACID); EXP DWORD CALLBACK I87124_GetBaudRate(BYTE cSlot); EXP DWORD CALLBACK I87124_SetBaudRate(BYTE cSlot,BYTE BaudRate); EXP DWORD CALLBACK I87124_GetMasterStatus(BYTE cSlot); EXP DWORD CALLBACK I87124_GetSlaveStatus(BYTE cSlot,BYTE DesMACID); EXP DWORD CALLBACK I87124_StartDevice(BYTE cSlot,BYTE DesMACID); EXP DWORD CALLBACK I87124_StopDevice(BYTE cSlot,BYTE DesMACID); EXP DWORD CALLBACK I87124_StartAllDevice(BYTE cSlot); EXP DWORD CALLBACK I87124_StopAllDevice(BYTE cSlot); EXP DWORD CALLBACK I87124_AddDevice(BYTE cSlot,BYTE DesMACID,WORD Explicit_EPR); EXP DWORD CALLBACK I87124_RemoveDevice(BYTE cSlot,BYTE DesMACID); EXP DWORD CALLBACK I87124_AddIOConnection(BYTE cSlot,BYTE DesMACID,BYTE ConType,WORD DeviceInputLen,WORD DeviceOutputLen,WORD EPR); EXP DWORD CALLBACK I87124_RemoveIOConnection(BYTE cSlot,BYTE DesMACID,BYTE ConType); EXP DWORD CALLBACK I87124_GetAttribute(BYTE cSlot,BYTE DesMACID,BYTE ClassID,BYTE InstanceID,BYTE AttributeID); EXP DWORD CALLBACK I87124_IsGetAttributeOK(BYTE cSlot,BYTE DesMACID); EXP DWORD CALLBACK I87124_GetAttributeValue(BYTE cSlot,BYTE DesMACID,WORD *DataLen,BYTE *DATA); EXP DWORD CALLBACK I87124_SetAttribute(BYTE cSlot,BYTE DesMACID,BYTE ClassID,BYTE InstanceID,BYTE AttributeID,WORD DataLen,BYTE *DATA); EXP DWORD CALLBACK I87124_IsSetAttributeOK(BYTE cSlot,BYTE DesMACID); EXP DWORD CALLBACK I87124_ClearAllConfig(BYTE cSlot); EXP DWORD CALLBACK I87124_SearchAllDevices(BYTE cSlot); EXP DWORD CALLBACK I87124_SearchSpecificDevice(BYTE cSlot,WORD ListCount,BYTE *DesMACIDList); EXP DWORD CALLBACK I87124_IsSearchOK(BYTE cSlot); EXP DWORD CALLBACK I87124_GetSearchedDevices(BYTE cSlot,WORD *TotalDevices,BYTE *DesMACID,BYTE *Type,WORD *DeviceInputLen,WORD *DeviceOutputLen); EXP DWORD CALLBACK I87124_GetDeviceInfoFromScanList(BYTE cSlot,BYTE DesMACID,WORD *ListCount,BYTE *ConnectionTypeList,WORD *InputDataLenList,WORD *OutputDataLenList,WORD *EPRList); EXP DWORD CALLBACK I87124_GetScanList(BYTE cSlot,WORD *TotalDevices,BYTE *DesMACIDList,BYTE *ConnectionTypeList,WORD *InputDataLenList,WORD *OutputDataLenList,WORD *EPR_List); EXP DWORD CALLBACK I87124_ImportEEPROM(BYTE cSlot,WORD ListCount,BYTE *DesMACIDList,BYTE *ConnectionTypeList,WORD *InputDataLenList,WORD *OutputDataLenList,WORD *EPR_List); EXP DWORD CALLBACK I87124_SendExplicitMSG(BYTE cSlot,BYTE DesMACID,BYTE ServiceID,BYTE ClassID,BYTE InstanceID,WORD DataLen,BYTE *DATA); EXP DWORD CALLBACK I87124_IsExplicitMSGRespOK(BYTE cSlot,BYTE DesMACID); EXP DWORD CALLBACK I87124_GetExplicitMSGRespValue(BYTE cSlot,BYTE DesMACID,WORD *DataLen,BYTE *DATA); // I/O Configuring Functions EXP DWORD CALLBACK I87124_ReadInputData(BYTE cSlot,BYTE DesMACID,BYTE ConType,WORD *IOLen,BYTE *IODATA); EXP DWORD CALLBACK I87124_WriteOutputData(BYTE cSlot,BYTE DesMACID,BYTE ConType,WORD IOLen,BYTE *IODATA); EXP DWORD CALLBACK I87124_ReadbackOutputData(BYTE cSlot,BYTE DesMACID,BYTE ConType,WORD *IOLen,BYTE *IODATA); //ConnectionType #define ConType_Explicit 0 #define ConType_Poll 1 #define ConType_BitStrobe 2 #define ConType_COS 3 #define ConType_Cyclic 4 #define ConType_MultiPoll 5 //DLL Error Code #define I87124_NoError 0 #define I87124_SendCOMError 10001 #define I87124_ReceiveCOMError 10002 #define I87124_ModuleNotActive 10008 #define I87124_ModuleNoResp 10015 #define I87124_ModuleInUse 10025 #define I87124_ReStartModule 10027 //Firmware Error Code #define DNMXS_NoError 0 #define DNMXS_UnKnowError 5000 //Master Status Error Code #define DNMXS_BoardNotActive 1000 #define DNMXS_OnlineError 1001 #define DNMXS_CANBusError 1002 #define DNMXS_Booting 1003 //General Error Code #define DNMXS_MACIDError 1050 #define DNMXS_BaudRateError 1051 #define DNMXS_ConnectionTypeError 1052 #define DNMXS_DuplicMasterMACID 1053 //DesMACID»PMaster MACID¬Û¦P #define DNMXS_EEPROMError 1054 #define DNMXS_NowScanning 1055 #define DNMXS_ScanListError 1056 #define DNMXS_DeviceExist 1057 #define DNMXS_DeviceNotExist 1058 #define DNMXS_MapTableError 1059 //IOConnection Error #define DNMXS_ExplicitNotAllocate 1100 #define DNMXS_PollNotAllocate 1101 #define DNMXS_BitStrobeNotAllocate 1102 #define DNMXS_COSNotAllocate 1103 #define DNMXS_CyclicNotAllocate 1104 #define DNMXS_PollAlreadyExist 1105 #define DNMXS_BitStrobeAlreadyExist 1106 #define DNMXS_COSAlreadyExist 1107 #define DNMXS_CyclicAlreadyExist 1108 #define DNMXS_CommunicationPause 1109 //Slave Error Code #define DNMXS_SlaveNoResp 1150 #define DNMXS_WaitForSlaveResp 1151 #define DNMXS_SlaveRespError 1152 #define DNMXS_OutputDataLenError 1153 #define DNMXS_InputDataLenError 1154