EL_dev_arduino 3.0.0
|
#include <EL.h>
公開メンバ関数 | |
EL (WiFiUDP &udp, byte classGroupCode, byte classCode, byte instanceNumber) | |
オブジェクトを一つだけサポートする場合のコンストラクタ | |
EL (WiFiUDP &udp, byte eojs[][3], int count) | |
オブジェクトを複数サポートする場合のコンストラクタ | |
void | begin (void) |
通信の開始、受信開始 | |
void | update (const byte epc, byte pdcedt[]) |
EPCの値を変更する, eojが1個の場合(複数の場合は0番に相当) | |
byte * | at (const byte epc) |
EPCの値を取得する, eojが1個の場合(複数の場合は0番に相当) | |
void | update (const int devId, const byte epc, byte pdcedt[]) |
EPCの値を変更する, 複数の場合 | |
byte * | at (const int devId, const byte epc) |
EPCの値を取得する, 複数の場合 | |
void | send (IPAddress toip, byte sBuffer[], int size) |
IP指定による送信 | |
void | sendOPC1 (const IPAddress toip, const byte tid[], const byte seoj[], const byte *deoj, const byte esv, const byte epc, const byte edt[]) |
void | sendOPC1 (const IPAddress toip, const byte seoj[], const byte deoj[], const byte esv, const byte epc, const byte edt[]) |
void | sendOPC1 (const IPAddress toip, const byte deoj[], const byte esv, const byte epc, const byte *edt) |
void | sendOPC1ID (const IPAddress toip, const int devId, const byte deoj[], const byte esv, const byte epc, const byte *pdcedt) |
void | sendBroad (byte sBuffer[], int size) |
ブロードキャストによる送信(default: 192.168.1.255) | |
void | sendMulti (byte sBuffer[], int size) |
マルチキャストによる送信(default: 192.168.1.255) | |
void | sendMultiOPC1 (const byte tid[], const byte seoj[], const byte deoj[], const byte esv, const byte epc, const byte pdcedt[]) |
void | sendMultiOPC1 (const byte seoj[], const byte deoj[], const byte esv, const byte epc, const byte pdcedt[]) |
void | sendMultiOPC1 (const byte deoj[], const byte esv, const byte epc, const byte pdcedt[]) |
void | sendMultiOPC1ID (const int devId, const byte deoj[], const byte esv, const byte epc, const byte pdcedt[]) |
OPC一個用のマルチキャスト送信、seojの代わりにIDで指定、TID自動 | |
void | sendDetails (const IPAddress toip, const byte tid[], const byte seoj[], const byte deoj[], const byte esv, const byte opc, const byte detail[], const byte detailSize) |
複数のEPCで送信する場合はこれを使う | |
void | replyGetDetail (const IPAddress toip) |
Getに対して複数OPCにも対応して返答する内部関数 | |
boolean | replyGetDetail_sub (const byte eoj[], const byte epc, byte &devId) |
EOJとEPCを指定したとき、そのプロパティ(EDT)があるかチェックする内部関数 | |
void | replySetDetail (const IPAddress toip) |
Setに対して複数OPCにも対応して返答する内部関数 | |
boolean | replySetDetail_sub (const byte eoj[], const byte epc, byte &devId) |
EOJとEPCを指定したとき、そのプロパティ(EDT)があるかチェックする内部関数 | |
int | read () |
受信データを受け取る | |
IPAddress | remoteIP (void) |
受信データの送信元を取得する | |
void | returner (void) |
void | printAll (void) |
インスタンスの情報を表示 | |
void | delPtr (byte ptr[]) |
byte[] を安全にdeleteするinline関数 | |
公開変数類 | |
ELOBJ | profile |
profile object (for specialist) | |
ELOBJ * | devices |
device objects (for multi eoj) | |
byte | _rBuffer [EL_BUFFER_SIZE] |
receive buffer | |
byte | _tid [2] |
TID (semi-auto incremented) | |
限定公開メンバ関数 | |
int | parsePacket (void) |
受信データを読む | |
void | commonConstructor (WiFiUDP &udp, byte eojs[][3], int count) |
コンストラクタ共通処理 | |
void | tidAutoIncrement (void) |
TIDの自動インクリメント、オーバーフロー対策 | |
Main class for EL
EL::EL | ( | WiFiUDP & | udp, |
byte | classGroupCode, | ||
byte | classCode, | ||
byte | instanceNumber | ||
) |
オブジェクトを一つだけサポートする場合のコンストラクタ
WiFiUDP& | |
byte | eoj0: class group code |
byte | eoj1: class code |
byte | eoj2: instance code |
EL::EL | ( | WiFiUDP & | udp, |
byte | eojs[][3], | ||
int | count | ||
) |
オブジェクトを複数サポートする場合のコンストラクタ
WiFiUDP& | |
byte | eoj[][3] |
int | count |
byte * EL::at | ( | const byte | epc | ) |
EPCの値を取得する, eojが1個の場合(複数の場合は0番に相当)
epc | const byte |
byte * EL::at | ( | const int | devId, |
const byte | epc | ||
) |
EPCの値を取得する, 複数の場合
devId | const int, コンストラクタで渡した順番に相当 |
epc | const byte |
void EL::begin | ( | void | ) |
通信の開始、受信開始
none |
|
protected |
コンストラクタ共通処理
udp | WiFiUDP& |
eojs | byte[][3] |
count | int |
|
inline |
byte[] を安全にdeleteするinline関数
ptr | byte[] |
|
protected |
受信データを読む
void |
void EL::printAll | ( | void | ) |
インスタンスの情報を表示
none |
int EL::read | ( | void | ) |
受信データを受け取る
void |
IPAddress EL::remoteIP | ( | void | ) |
受信データの送信元を取得する
void |
void EL::replyGetDetail | ( | const IPAddress | toip | ) |
Getに対して複数OPCにも対応して返答する内部関数
toip | const IPAddress |
boolean EL::replyGetDetail_sub | ( | const byte | eoj[], |
const byte | epc, | ||
byte & | devId | ||
) |
EOJとEPCを指定したとき、そのプロパティ(EDT)があるかチェックする内部関数
eoj | const byte[] |
epc | const byte |
devId[out] | byte&: -1:profile, x:devId |
void EL::replySetDetail | ( | const IPAddress | toip | ) |
Setに対して複数OPCにも対応して返答する内部関数
toip | const IPAddress |
boolean EL::replySetDetail_sub | ( | const byte | eoj[], |
const byte | epc, | ||
byte & | devId | ||
) |
EOJとEPCを指定したとき、そのプロパティ(EDT)があるかチェックする内部関数
eoj | const byte[] |
epc | const byte |
devId[out] | byte&: -1:profile, x:devId |
void EL::returner | ( | void | ) |
return none
void EL::send | ( | IPAddress | toip, |
byte | sBuffer[], | ||
int | size | ||
) |
IP指定による送信
toip | IPAddress |
sBuffer | byte[] |
size | int size of sBuffer |
void EL::sendBroad | ( | byte | sBuffer[], |
int | size | ||
) |
ブロードキャストによる送信(default: 192.168.1.255)
byte | sBuffer[] |
int | size |
void EL::sendDetails | ( | const IPAddress | toip, |
const byte | tid[], | ||
const byte | seoj[], | ||
const byte | deoj[], | ||
const byte | esv, | ||
const byte | opc, | ||
const byte | detail[], | ||
const byte | detailSize | ||
) |
複数のEPCで送信する場合はこれを使う
toip | const IPAddress:送信先 |
tid | const tid:TID |
seoj | const byte[3] |
deoj | const byte[3] |
esv | const byte |
epc | const byte |
detail | const byte[N]: {EPC, PDC, EDT[x]}[y] |
detailSize | const byte: size of detail N |
void EL::sendMulti | ( | byte | sBuffer[], |
int | size | ||
) |
マルチキャストによる送信(default: 192.168.1.255)
byte | sBuffer[] |
int | size |
void EL::sendMultiOPC1 | ( | const byte | deoj[], |
const byte | esv, | ||
const byte | epc, | ||
const byte | pdcedt[] | ||
) |
void EL::sendMultiOPC1 | ( | const byte | seoj[], |
const byte | deoj[], | ||
const byte | esv, | ||
const byte | epc, | ||
const byte | pdcedt[] | ||
) |
void EL::sendMultiOPC1 | ( | const byte | tid[], |
const byte | seoj[], | ||
const byte | deoj[], | ||
const byte | esv, | ||
const byte | epc, | ||
const byte | pdcedt[] | ||
) |
void EL::sendMultiOPC1ID | ( | const int | devId, |
const byte | deoj[], | ||
const byte | esv, | ||
const byte | epc, | ||
const byte | pdcedt[] | ||
) |
OPC一個用のマルチキャスト送信、seojの代わりにIDで指定、TID自動
devId | const byte int |
deoj | const byte* |
esvconst | byte |
epc | const byte |
pdcedt | const byte* |
void EL::sendOPC1 | ( | const IPAddress | toip, |
const byte | deoj[], | ||
const byte | esv, | ||
const byte | epc, | ||
const byte * | edt | ||
) |
void EL::sendOPC1 | ( | const IPAddress | toip, |
const byte | seoj[], | ||
const byte | deoj[], | ||
const byte | esv, | ||
const byte | epc, | ||
const byte | pdcedt[] | ||
) |
return none
void EL::sendOPC1 | ( | const IPAddress | toip, |
const byte | tid[], | ||
const byte | seoj[], | ||
const byte * | deoj, | ||
const byte | esv, | ||
const byte | epc, | ||
const byte | edt[] | ||
) |
void EL::sendOPC1ID | ( | const IPAddress | toip, |
const int | devId, | ||
const byte | deoj[], | ||
const byte | esv, | ||
const byte | epc, | ||
const byte * | pdcedt | ||
) |
return none
|
protected |
TIDの自動インクリメント、オーバーフロー対策
none |
void EL::update | ( | const byte | epc, |
byte | pdcedt[] | ||
) |
EPCの値を変更する, eojが1個の場合(複数の場合は0番に相当)
epc | const byte |
pdcedt | byte[] |
void EL::update | ( | const int | devId, |
const byte | epc, | ||
byte | pdcedt[] | ||
) |
EPCの値を変更する, 複数の場合
devId | const int, コンストラクタで渡した順番に相当 |
epc | const byte |
byte | pdcedt[] |
byte EL::_rBuffer[EL_BUFFER_SIZE] |
receive buffer
byte EL::_tid[2] |
TID (semi-auto incremented)
ELOBJ* EL::devices |
device objects (for multi eoj)
ELOBJ EL::profile |
profile object (for specialist)