サイト内検索

検索

Shares

Table of Content

EthercatDevice.pdoWrite()

[Ethercat Device]

説明

該当するEtherCATスレーブデバイスに指定されたオフセット値から、一定の大きさの出力プロセスデータを書き込みます。

構文

int pdoWrite(uint32_t offset, void *data, uint32_t size);

媒介変数

  • [in] uint32_t offset
    該当するEtherCATスレーブデバイスの出力プロセスデータのオフセット値。
  • [in] void *data
    出力プロセスデータを書き込むためのデータ・バッファ。
  • [in] uint32_t size
    出力プロセスデータを書き込むためのデータ・バッファのサイズ。

戻り値

error codeを返します。返された値が 0の場合、この関数が正常に完了したことを示します。

備考

この関数は、 EthercatMaster::start()が正常に実行された後に呼び出す必要があります。この関数はブロッキングされていないため、循環コールバック内で呼び出すことができます。

#include "Ethercat.h"

EthercatMaster master;
EthercatDevice_Generic slave;

uint8_t buffer[4] = {0x00, 0x55, 0xAA, 0xFF};

void setup() {
  master.begin();
  slave.attach(0, master);
  master.start(1000000);
}

void loop() {
  buffer[0] = ~buffer[0];
  buffer[1] = ~buffer[1];
  buffer[2] = ~buffer[2];
  buffer[3] = ~buffer[3];
  slave.pdoWrite(0, buffer, 4);
  delay(1000);
}

詳細は EtherCAT Library User Manual QEC EtherCAT命令とAPI使用法参照

上部へスクロール