
Добавил:
kasak9595
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:8 СЕМЕСТР / АСУ ЭТО / Wago-IO-PRO CAA 2.3.8.5 (5.10.2007) / Setup_CoDeSys_SP_RTE / IODriver ToolKit / IODrvFunctions
.h#define REGKEY_ROOT_MACHINE L"\\Registry\\Machine"
#define REGKEY_CODESYS_SP REGKEY_ROOT_MACHINE L"\\Software\\3S-Smart Software Solutions GmbH\\CoDeSys SP"
#define REGKEY_RUNTIME REGKEY_CODESYS_SP L"\\RTPLC"
#define REGKEY_VISU REGKEY_RUNTIME L"\\Visualization"
#define REGKEY_RETAIN REGKEY_RUNTIME L"\\Retain"
#define REGKEY_WATCHDOG REGKEY_RUNTIME L"\\Watchdog"
#define REGKEY_COMMUNICATION REGKEY_RUNTIME L"\\Communication"
#define REGKEY_RS232 REGKEY_COMMUNICATION L"\\RS232"
#define REGKEY_TCPIP REGKEY_COMMUNICATION L"\\TcpIp"
#define REGKEY_PIPE REGKEY_COMMUNICATION L"\\Pipe"
#define REGKEY_IODEVICES REGKEY_RUNTIME L"\\IO Devices\\"
#define REGKEY_EXTERNALDLLS REGKEY_RUNTIME L"\\External DLLs"
#define REGKEY_OUTPUTS REGKEY_RUNTIME L"\\Outputs"
#define REGVAL_TYPE L"Type"
#define REGVAL_SIZE L"Size"
#define REGVAL_INTERVAL L"Interval"
#define REGVAL_CYCLETIME L"Cycletime"
#define REGVAL_MULTIPLIER L"Multiplier"
#define REGVAL_PORT L"Port"
#define REGVAL_BAUDRATE L"Baudrate"
#define REGVAL_TIMEOUT L"Timeout"
#define REGVAL_NAME L"Name"
#define REGVAL_ENABLE L"Enable"
#define REGVAL_FILES L"Files"
#define REGVAL_FILE L"File"
#define REGVAL_MAIN L"Main"
#define REGVAL_PATH L"Path"
#define REGVAL_ADDRESS L"Address"
#define REGVAL_FORCE L"Force"
#define REGVAL_VALUE L"Value"
#define REGVAL_RESTORE L"Restore"
#define REGVAL_CHECKEXTREF L"CheckExtRef"
#define REGVAL_PRIORITY L"Priority"
#define SZREGKEY_ROOT_MACHINE "\\Registry\\Machine"
#define SZREGKEY_CODESYS_SP SZREGKEY_ROOT_MACHINE "\\Software\\3S-Smart Software Solutions GmbH\\CoDeSys SP"
#define SZREGKEY_RUNTIME SZREGKEY_CODESYS_SP "\\RTPLC"
#define SZREGKEY_VISU SZREGKEY_RUNTIME "\\Visualization"
#define SZREGKEY_RETAIN SZREGKEY_RUNTIME "\\Retain"
#define SZREGKEY_WATCHDOG SZREGKEY_RUNTIME "\\Watchdog"
#define SZREGKEY_COMMUNICATION SZREGKEY_RUNTIME "\\Communication"
#define SZREGKEY_RS232 SZREGKEY_COMMUNICATION "\\RS232"
#define SZREGKEY_TCPIP SZREGKEY_COMMUNICATION "\\TcpIp"
#define SZREGKEY_PIPE SZREGKEY_COMMUNICATION "\\Pipe"
#define SZREGKEY_IODEVICES SZREGKEY_RUNTIME "\\IO Devices\\"
#define SZREGKEY_EXTERNALDLLS SZREGKEY_RUNTIME "\\External DLLs"
#define SZREGKEY_OUTPUTS SZREGKEY_RUNTIME "\\Outputs"
#define SZREGVAL_TYPE "Type"
#define SZREGVAL_SIZE "Size"
#define SZREGVAL_INTERVAL "Interva"
#define SZREGVAL_CYCLETIME "Cycletime"
#define SZREGVAL_MULTIPLIER "Multiplier"
#define SZREGVAL_PORT "Port"
#define SZREGVAL_BAUDRATE "Baudrate"
#define SZREGVAL_TIMEOUT "Timeout"
#define SZREGVAL_NAME "Name"
#define SZREGVAL_ENABLE "Enable"
#define SZREGVAL_FILES "Files"
#define SZREGVAL_FILE "File"
#define SZREGVAL_MAIN "Main"
#define SZREGVAL_PATH "Path"
#define SZREGVAL_ADDRESS "Address"
#define SZREGVAL_FORCE "Force"
#define SZREGVAL_VALUE "Value"
#define SZREGVAL_RESTORE "Restore"
#define SZREGVAL_CHECKEXTREF "CheckExtRef"
#define SZREGVAL_PRIORITY "Priority"
#define SZREGVAL_LASTEXITSTAT "LastExit"
/*These functions are called from the kernel.*/
unsigned long IODrvInitIO(unsigned long ulPar);
unsigned long IODrvExitIO(void);
unsigned long IODrvGetId(void* pData);
unsigned long IODrvGetDeviceFlags(unsigned long ulDeviceNr);
void IODrvGetIORange(unsigned long* pulOffset, unsigned long* pulSize);
char IODrvConfigureIONetStart(unsigned long ulDeviceNr);
char IODrvConfigureIONetDone(unsigned long ulDeviceNr);
char IODrvConfigureModule(int iModule, void* pModConfData, unsigned long ulDeviceNr);
char IODrvConfigureDevice(void* pBusDesc, unsigned long ulDeviceNr);
char IODrvStartWriteOutputs(unsigned long ulTaskNr, unsigned long ulCycleTime, int iDevice);
char IODrvWriteOutput(unsigned long ulOffset, unsigned long ulSize, unsigned char* pucData, unsigned long ulTaskNr, int iDevice);
char IODrvDoneWriteOutputs(unsigned long ulTaskNr, unsigned long ulCycleTime, int iDevice);
char IODrvStartReadInputs(unsigned long ulTaskNr, unsigned long ulCycleTime, int iDevice);
char IODrvReadInput(unsigned long ulOffset, unsigned long ulSize, unsigned char* pucData, unsigned long ulTaskNr, int iDevice);
char IODrvDoneReadInputs(unsigned long ulTaskNr, unsigned long ulCycleTime, int iDevice);
char IODrvPLCStatusChanges(char cNewState);
unsigned long IODrvEnterNMIServiceRoutine(unsigned long ulPar);
void IODrvLeaveNMIRoutine(void);
int IODrvStartInterrupt(int iParam);
int IODrvStopInterrupt(int iParam);
unsigned long IODrvRetainSave(unsigned short sSegment, unsigned char *pbyData, unsigned long ulSize, int iDevice);
unsigned long IODrvRetainRestore(unsigned short sSegment, unsigned char *pbyData, unsigned long ulSize, int iDevice);
unsigned long IODrvCyclicCallback(__int64* pliCurTime);
void* IODrvGetExtRefTable(void);
unsigned long IODrvPreComputeService(unsigned char* pbyReceive, unsigned long ulRecvLen, unsigned char* pbySend);
unsigned long IODrvPostComputeService(unsigned char* pbyReceive, unsigned long ulRecvLen, unsigned char* pbySend, unsigned long ulSendLen);
unsigned int IODrvSrvBrowserCmds(char* pszCommand, char* pszAnswer, unsigned int iSubCommand, unsigned int iBlockNr, char* pcActiveBrowserCommand);
unsigned int IODrvAddBrowserhelp(char* pszAnswer, unsigned short usCurNr);
unsigned long IODrvProcessHook(unsigned long ulHook, unsigned long ulAdditionalInfo);
/*The following functions are functions who call the kernel.*/
int IODrvCreateTask(int iPriority, unsigned long ulCycleTime, int (*pfEntry)(void*), void* pArg, unsigned long ulFlags);
int IODrvDeleteTask(int iPriority);
int IODrvWaitForObject(int iWaitObjectNr, unsigned long ulMaxTime);
int IODrvSetObject(int iWaitObjectNr);
int IODrvSleep(unsigned long ulSleepTime);
int IODrvResume(int iPriority);
int IODrvSuspend(int iPriority);
int IOdrvAsynchFileOpen(void** pHandle,unsigned long ulAttributes,char* pszName);
int IOdrvAsynchFileClose(void* Handle);
int IOdrvAsynchFileRead(void* Handle, char* pBuffer, unsigned long ulSize);
int IOdrvAsynchFileWrite(void* Handle, char* pBuffer, unsigned long ulSize);
int IOdrvSynchFileOpen(void** pHandle,unsigned long ulAttributes,char* pszName);
int IOdrvSynchFileClose(void* Handle);
int IOdrvSynchFileRead(void* Handle, char* pBuffer, unsigned long ulSize);
int IOdrvSynchFileWrite(void* Handle, char* pBuffer, unsigned long ulSize);
ProjectInfo* IODrvGetProjectInfo(void);
/*TargetID from driver:*/
char IODrvGetTargetIds(unsigned long *pulIOTrgId, unsigned long *pulIOHookId);
RTS_LAST_ERROR* IODrvGetLastError(void);
int IODrvGetSystemTimeFromBoot(__int64* pil);
char* IODrvGetAddress(unsigned long ulSegment);
unsigned long IODrvGetSegSize(unsigned long ulSegment);
Соседние файлы в папке IODriver ToolKit