#include <XBee.h> //最初に必要な宣言
#include <MsTimer2.h>
#define led 3
#define Count_led 2
XBee xbee = XBee(); //XBeeオブジェクトの定義
volatile uint8_t payload[] = {0}; //XBeeで送信するデータです。ここでは2バイトの数値2つ分を定義
// SH + SL Address of receiving XBee
XBeeAddress64 addr64 = XBeeAddress64(0x0013a200, 0x40918AA3); //実際の送信先64bitアドレスを記入
ZBTxRequest zbTx = ZBTxRequest(addr64, payload, sizeof(payload)); //上で定義したpayloadのデータサイズを指定
ZBTxStatusResponse txStatus = ZBTxStatusResponse(); //使用しなくても使える
volatile int val ;
volatile uint8_t light;
volatile int ms_count = 0;
void timerFire(){
//1ms毎にここが呼び出し
ms_count++;
if(ms_count > 1100)
ms_count = 0;
if(ms_count <= 1098)
analogWrite(Count_led, 0);
else {
analogWrite(Count_led, 200);
if(ms_count == 1100)
val = analogRead(0);
light = val / 4;
payload[0] = light-1;
analogWrite(led, light);
xbee.send(zbTx); //16bitのデータを送信!
}
}
void setup() {
pinMode(led,OUTPUT);
Serial.begin(9600);
MsTimer2::set(1, timerFire); //1ms毎に呼び出す設定
MsTimer2::start();
xbee.setSerial(Serial); //Serialをxbeeに繋ぎます。
}
void loop() {
}
0 Comments
Sign in to comment.