2台のArduinoどうしでXbeeによる通信が行える。
このボードはArduinoの0番から7番ピン、A0からA5ピンの上に装着する。このようなボードをArduinoのシールドという。0番、1番の2本のピン以外は、シールドの上の青色のピンで利用できる。また、Arduinoの電源(5V, 3.3V, Vin)が隠れてしまうが、ArduinoにはAREFピン(13番ピンの2つ隣)の内側に5Vのピンがある。
ボードには2つのスイッチがついていて、動作を設定できる。
| 赤 | 黄 | 動作 |
| PROG | - | Arduinoにスケッチを書き込む |
| RUN | USB | PCとXbeeを直結する |
| RUN | Xbee | ArduinoとXbeeを接続する |
setup(){}
loop(){}
次にXbeeボードの赤のスイッチをRUN、黄色のスイッチをUSBにして、Arduinoにボードを挿す。
Arduino IDEのシリアルモニタを立ち上げれば、PCを通してXbeeと通信が行われる。2台のArduinoの0番ピンと1番ピンを交差して接続したのと同じ動作が行われるので、 ハードウェアシリアルのみを利用できる。 プログラムはシリアル通信と同様である。
一方のArduinoが0.5秒間隔でHとLの文字を送信する。他方のArduinoがそれを受信して、LEDを点灯、消灯する。
setup(){
Serial.begin( 9600 );
}
loop(){
Serial.send( 'H' );
delay( 500 );
Serial.send( 'L' );
delay( 500 );
}const int LED_PIN=13;
void setup(){
Serial.begin( 9600 );
pinMode( LED_PIN, OUTPUT );
digitalWrite( LED_PIN, LOW );
}
byte state = LOW;
void loop(){
byte x;
if( Serial.available() ){
x = Serial.read();
if( x=='H' ) state = HIGH;
if( x=='L' ) state = LOW;
digitalWrite( LED_PIN, state );
}
}