endTransmission()
名称
Wire.endTransmission()
説明
Wire.beginTransmission()によって開始したスレーブデバイスへの通信を終了し、Wire.write()によってキューイングされたデータを実際に送信する。
Arduino 1.0.1では、endTransmission()は論理型(boolean型)の引数を受け付け、特定のI2Cデバイスとの互換性に関する振る舞いを変更することができる。
trueを指定すると、endTransmission()は送信後に停止メッセージを送信した後、I2Cバスを解放する。
falseを指定すると、endTransmission()は送信後に再開メッセージを送信する。バスは解放されず、他のマスターデバイスがメッセージ間で送信することを防ぐ。これにより、一つのマスターデバイスが制御を行っている際に、複数の送信を行うことができる。
デフォルト値はtrueである。
書式
uint8_t TwoWire::endTransmission(void);
uint8_t TwoWire::endTransmission(uint8_t sendStop);
引数
sendStop | 論理型(boolean型)。trueを指定すると、送信後に停止メッセージを送信し、バスを解放する。falseを指定すると、再開メッセージを送信し、接続をアクティブのまま保持する。 |
戻り値
通信の状態を表す数値。
0 | 成功。 |
1 | 通信バッファに対してデータが長すぎる。 |
2 | アドレス送信時にNACKを受信した。 |
3 | データ送信時にNACKを受信した。 |
4 | その他のエラー。 |
5 | タイムアウト。 |
参照
オリジナルのページ
https://www.arduino.cc/reference/en/language/functions/communication/wire/endtransmission/
Last Revision: 2022/04/13
最終更新日
January 4, 2024