RtecatVoeWrite
RtecatVoeWrite writes data to a VoE-enabled device through VoE (Vendor-Specific Protocol over EtherCAT).
Syntax
RTECAT_COMMAND_STATUS RtecatVoeWrite(
[in] RTECAT_HANDLE SubDevice,
[in] DWORD VendorId,
[in] USHORT VendorType,
[in] const UCHAR* pData,
[in] ULONG Length
);
Parameters
[in] SubDevice
A handle to a SubDevice. To retrieve the corresponding handle, use RtecatOpenSubDeviceByIndex, RtecatOpenSubDeviceByStationAddress, or RtecatOpenSubDeviceByExplicitId.
[in] VendorId
A vendor ID.
[in] VendorType
A vendor type.
[in] pData
A pointer to the buffer that contains the data to write to the VoE-enabled device.
[in] Length
The length, in bytes, of the data to write to the VoE-enabled device.
Return Values
The function returns an RTECAT_COMMAND_STATUS structure. If an error occurs, field State of the structure is set to ecatCommandError and the error code is stored in field ErrorId (see RTECAT_ERROR for error values). If the function succeeds, ErrorId is set to ecatErrNoError (which is represented by the value 0). If the function fails, it stores a different error value.
Possible return values:
| Return value | Meaning |
|---|---|
|
ecatErrNoError |
The function succeeded. |
|
ecatErrNullParameter |
Parameter pData is NULL. |
|
ecatErrWrongParameter |
One of the following conditions occurred:
|
|
ecatErrMainDeviceNotReady |
The MainDevice is not ready. |
|
ecatErrFeatureUnavailable |
The SubDevice doesn't support VoE. |
Remarks
RtecatVoeWrite is an asynchronous function that takes time to complete. It allows for background execution and requires you to check its status by calling RtecatGetCommandStatus or wait for it to complete by calling RtecatWaitForCommand.
Requirements
| Minimum supported version | Header | Library |
|---|---|---|
|
wRTOS 1.0 SDK |
RtecatApi.h |
RtecatApi_W64.lib (Windows), RtecatApi.lib (RTSS) |
See Also: