ISDU fast processing
iqInterface FW Version 1.2.3.20 is required
This mode decreases a request time for ISDU Read/Write.
The difference with and without fast processing mode
Mode | Device: COM3 Min. cycle time: 1 ms On Request length: 2 bytes Process Data Length: 4 bytes | ||
Sequence Read/Write “Application tag” | Normal mode | Fast processing ON | Improvement |
16,5 sec | 11,3 sec | 32 % | |
Read only “Application tag” 32 bytes | 7,62 sec | 6,40 sec | 17 % |
Write only “Application tag” 32 bytes | 8,18 sec | 4,27 sec | 48 % |
Sequence Read/Write 1 byte integer (50 times) | 4,83 sec | 2,40 sec | 50,32 % |
Read only 1 byte integer (50 times) | 4,80 sec | 3,20 sec | 33,33 % |
Write only 1 byte integer (50 times) | 4,82 sec | 1,60 sec | 66,77 % |
/**
* \brief Activate fast processing
*
* \param[in] uiPortNo COM or virtual ethernet port number of iqInterface
* \param[out] cpErrMsg an error message (minimum 256 symbols!)
*
* \return error code
*/
DLL_API
int16 fast_processing_Activate(
uint16 uiPortNo,
char08* cpErrMsg);
/**
* \brief Deactivate fast processing
*
* \param[in] uiPortNo COM or virtual ethernet port number of iqInterface
* \param[out] cpErrMsg an error message (minimum 256 symbols!)
*
* \return error code
*/
DLL_API
int16 fast_processing_Deactivate(
uint16 uiPortNo,
char08* cpErrMsg);
/**
* \brief Read on-request data
*
* Short hand for mst_StartReadOD() + mst_WaitODRsp() + mst_GetReadODRsp()
*
* \param[in] uiPortNo COM or virtual ethernet port number of iqInterface
* \param[in] uiIndex an IO-Link parameter index
* \param[in] ucSubindex an IO-Link parameter sub-index
* \param[out] ucpBuf a data buffer
* \param[in] uiBufSize a data buffer size
* \param[out] uipISDUErr a pointer to store an ISDU error code
* \param[out] cpErrMsg an error message (minimum 256 symbols!)
*
* \return the actual size of readed on-request data bytes
*/
DLL_API
int16 fast_processing_ReadOD(uint16 uiPortNo,
uint16 uiIndex,
uchar08 ucSubindex,
uchar08* ucpBuf,
uint16 uiBufSize,
uint16* uipISDUErr,
char08* cpErrMsg);
/**
* \brief Write on-request data
*
* Short hand for mst_StartWriteOD() + mst_WaitODRsp() + mst_GetWriteODRsp()
*
* \param[in] uiPortNo COM or virtual ethernet port number of iqInterface
* \param[in] uiIndex an IO-Link parameter index
* \param[in] ucSubindex an IO-Link parameter sub-index
* \param[in] ucpBuf a data buffer
* \param[in] ucBytesCount a count of bytes to send
* \param[out] uipISDUErr a pointer to store an ISDU error code
* \param[out] cpErrMsg an error message (minimum 256 symbols!)
*/
DLL_API
int16 fast_processing_WriteOD(uint16 uiPortNo,
uint16 uiIndex,
uchar08 ucSubindex,
uchar08* ucpBuf,
uint16 uiBytesCount,
uint16* uipISDUErr,
char08* cpErrMsg);