arduino を TJ3B のスレーブとして使う(その4)

先日のarduino側プログラムはそのままに、TJ3B側のプログラムを手直しする。
sub_io_set_gV()でセットされた値がどのようにarduinoに渡るか確認する。


arduinoでの受信結果。
sub_io_set_gV()でセットしたlong型の値は受信したデータの4バイト目から下位バイトから始まる4バイトのデータになっていることが分かる。


I2Cで1バイトづつ送信された4バイト分のデータをarduinoで使用するためには1つのlong型に戻す必要がある。演算して値を求めることもできるが、共用体を使うと楽だと思う。今回の環境ではTJ3B側もarduino側も同様にリトルエンディアンだったが、そうでない環境もあるので異なるシステムを組み合わせて使う場合は事前に確認しておく。