ja-jp_commands:reference:imcprotocol
文書の過去の版を表示しています。
IMcProtocol()
コマンド
| コマンド | 引数 | 戻り値 | 動作 |
|---|---|---|---|
IMcProtocol() | なし | void | 受信要求を確認し、MC Protocol応答を処理します。 |
使用例
void setup() { IMcMem(32, 32, 64, 64); // MC Protocolで使用するX・Y・M・Dメモリサイズを設定します。 IMcAdr(0, 0, 0, 0); // X・Y・M・Dメモリの開始アドレスを設定します。 IMcInit(Serial2, 1, 9600); // 通信ポート、局番、ボーレートを設定します。 } void loop() { IMcProtocol(); // 受信要求を確認し、MC Protocol応答を処理します。 if (X != nullptr) X[0] = IdigitalRead(0, 5); // 入力を連続して複数回読み、すべて一致した場合のみ状態を更新します。HIGHとLOWが混在する場合は前の安定状態を保持します。 if (Y != nullptr) digitalWrite(32, Y[0] ? HIGH : LOW); }
注意事項
loop()でIMcProtocol()を継続的に呼び出します。- X/Yの16進数アドレスとM/Dの10進数アドレスを混同しないでください。
- ポインタを割り当てる前にX/Y/M/Dを使用しないでください。
- CnetまたはModbusが実行中に共有
M/Dを再割り当てすると、MC Protocolが参照していたアドレスが変わります。メモリサイズの設定はすべてsetup()で完了し、実行中は再呼び出ししないでください。 - 割り当て関数は成功状態を返しません。サイズが0でない場合、該当するグローバルポインタが
nullptrでないことを確認してからアクセスします。
同じカテゴリの内蔵コマンド
ja-jp_commands/reference/imcprotocol.1788796400.txt.gz · 最終更新: by 127.0.0.1
