NOBのArduino日記!

NOBのArduino日記!

趣味は車・バイク・自転車・ラジコン・電子工作です。

Arduino IDE(Wire: read関数の使い方)

Wire: read関数
 Wire: read関数は、requestFrom関数の呼び出し後にスレーブデバイスからマスタに送信された、またはマスタからスレーブに送信されたバイトを読み取ります。
 read関数はStreamユーティリティークラスから継承します。

■使用例
 ArduinoIDEで使用するWire: read関数の使い方は以下の通りです。
 試しにこのプログラムをArduinoUNOで実行すると、最初にWire.begin関数でI2Cバスを開始し、Serial.begin関数でシリアル通信を開始します。
 次にWrite.requestFrom関数で2番のスレーブデバイスから6バイトを要求し、Wire.read関数で文字を受信し変数cに代入します。 
 最後に変数cをSerial.print関数によってシリアルモニターに出力します。

#include <Wire.h>

void setup() {
   Wire.begin();               // i2cバスに参加する(マスタの場合はアドレスはオプション)
   Serial.begin(9600);   // シリアル出力を開始する
}

void loop() {
   Wire.requestFrom(2, 6);       // スレーブデバイス#2から6バイトを要求する
   while (Wire.available()) {   // スレーブは要求したものより少なく送ることができる
       char c = Wire.read();       // 文字をバイトとして受け取る
       Serial.print(c);                 // 文字を印刷する
   }
   delay(500);
}
イメージ 1
図1:プログラム例

■構文
 Wire.read()

■パラメータ
 有りません。

■戻り値
 受信した次のバイト。 

イメージ 1 イメージ 3
励みになりますのでよければクリック下さい(^o^)/

↩【ArduinoIDE reference】目次に戻る