[Ethercat Device]
Description
Read 64-bit value from the specified object for such EtherCAT slave device.
Syntax
uint64_t sdoUpload64(uint16_t od_index, uint8_t od_subindex, uint32_t timeout_us = 100000);
Parameters
[in] uint16_t od_index
Index of the object.[in] uint8_t od_subindex
Subindex of the object.[in] uint32_t timeout_us
Timeout in microseconds.
Return Value
Return the 64-bit value.
Comment
This function must be called after a successful execution of EthercatMaster::begin()
. This function is blocking and cannot be called within the Cyclic Callback.
Example
#include "Ethercat.h" EthercatMaster master; EthercatDevice_Generic slave; void setup() { Serial.begin(115200); master.begin(); slave.attach(0, master); master.start(1000000); } void loop() { uint64_t value = slave.sdoUpload64(0x5000, 0x00); uint32_t highPart = (uint32_t)(value >> 32); uint32_t lowPart = (uint32_t)(value & 0xFFFFFFFF); Serial.print("Value: "); Serial.print(highPart, HEX); Serial.print(lowPart, HEX); Serial.println(); delay(1000); }
Please see the EtherCAT Library User Manual for more QEC EtherCAT instructions and API usage.