[Ethercat Device]
説明
該当するEtherCATスレーブデバイスの指定されたオブジェクトから64ビット値を読み取ります。
構文
uint64_t sdoUpload64(uint16_t od_index, uint8_t od_subindex, uint32_t timeout_us = 100000);
媒介変数
[in] uint16_t od_index
オブジェクトのインデックス。[in] uint8_t od_subindex
オブジェクトのサブインデックス。[in] uint32_t timeout_us
タイムアウト値でマイクロ秒単位。
戻り値
64ビット値を返します。
備考
この関数は、 EthercatMaster::begin()
が正常に実行された後で呼び出す必要があります。この関数はブロッキングされているため、循環コールバック関数内で呼び出すことができません。
例
#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); }
詳細は EtherCAT Library User Manual QEC EtherCAT命令とAPI使用法参照