XbeeApi

Dependents:   XbeeAPI Hybrid_main_FirstEdtion

Committer:
ark777
Date:
Mon Mar 13 06:31:22 2017 +0000
Revision:
2:30220fb0e20e
Parent:
1:34007fc9235e
????????????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ark777 0:bca23ad9e6b5 1 /*
ark777 0:bca23ad9e6b5 2 XbeeAPI用シリアル通信ライブラリ
ark777 0:bca23ad9e6b5 3 */
ark777 0:bca23ad9e6b5 4 #include "mbed.h"
ark777 0:bca23ad9e6b5 5 #include <string>
ark777 0:bca23ad9e6b5 6
ark777 0:bca23ad9e6b5 7 #ifndef _XbeeApiLib_h
ark777 0:bca23ad9e6b5 8 #define _XbeeApiLib_h
ark777 0:bca23ad9e6b5 9
ark777 0:bca23ad9e6b5 10 class XbeeApi{
ark777 0:bca23ad9e6b5 11
ark777 0:bca23ad9e6b5 12 class Address{
ark777 0:bca23ad9e6b5 13 public:
ark777 0:bca23ad9e6b5 14 char ADR[8];
ark777 0:bca23ad9e6b5 15 char ADR16bit[2];
ark777 0:bca23ad9e6b5 16 bool IsAvailable;
ark777 0:bca23ad9e6b5 17 char sum;
ark777 0:bca23ad9e6b5 18 };
ark777 0:bca23ad9e6b5 19 public:
ark777 1:34007fc9235e 20 XbeeApi(PinName Tx, PinName Rx, int BaudRate, void (*onPacketDataReceived)(int, char*));
ark777 0:bca23ad9e6b5 21 void SetAddress(int Num, unsigned long HIGH, unsigned long LOW);
ark777 0:bca23ad9e6b5 22 void StartPacket(char StartWith);
ark777 0:bca23ad9e6b5 23 void Write(string val);
ark777 0:bca23ad9e6b5 24 void Write(int val);
ark777 1:34007fc9235e 25 void Write(long long val);
ark777 0:bca23ad9e6b5 26 void Write(double val);
ark777 0:bca23ad9e6b5 27 void Write(float val);
ark777 0:bca23ad9e6b5 28 void EndPacket();
ark777 0:bca23ad9e6b5 29 void ClearPacket();
ark777 0:bca23ad9e6b5 30
ark777 0:bca23ad9e6b5 31 void SetInterrupt(bool val);
ark777 0:bca23ad9e6b5 32 void OnDataReceived();
ark777 0:bca23ad9e6b5 33
ark777 0:bca23ad9e6b5 34 void OnTransmitEnabled();
ark777 0:bca23ad9e6b5 35
ark777 0:bca23ad9e6b5 36 int HopLimit;
ark777 0:bca23ad9e6b5 37
ark777 1:34007fc9235e 38 //パケット受信時に呼ばれる関数
ark777 1:34007fc9235e 39 void (*OnPacketReceived)(int, char*);
ark777 1:34007fc9235e 40
ark777 0:bca23ad9e6b5 41 private:
ark777 0:bca23ad9e6b5 42 int CheckSum;
ark777 0:bca23ad9e6b5 43 char buf[128];
ark777 0:bca23ad9e6b5 44 int ReceivedBytesCounter;
ark777 0:bca23ad9e6b5 45 char RxBuf[256];
ark777 0:bca23ad9e6b5 46 int itr;
ark777 0:bca23ad9e6b5 47 int BytesToTransmit;
ark777 0:bca23ad9e6b5 48 int NextTransmitIndex;
ark777 0:bca23ad9e6b5 49 int TransmittingAddrNum;
ark777 0:bca23ad9e6b5 50 bool IsTransmitting;
ark777 0:bca23ad9e6b5 51
ark777 0:bca23ad9e6b5 52 void WriteWithEsc(char c);
ark777 0:bca23ad9e6b5 53
ark777 0:bca23ad9e6b5 54 Address address[4];
ark777 0:bca23ad9e6b5 55 Serial Xbee;
ark777 0:bca23ad9e6b5 56 };
ark777 0:bca23ad9e6b5 57
ark777 0:bca23ad9e6b5 58
ark777 0:bca23ad9e6b5 59 #endif