Ehternet(TEthernetクラス)

Ethernetを使用するためのライブラリです。
使用する場合は、ライブラリとしてインポートして、#include <Ethernet.h>を記述してください。また、TEthernet Ethernet;と書いてインスタンスを作ってください。

begin

概要 イーサネットライブラリを開始します。パラメータとして指定しないIPアドレス、DNS、デフォルトゲートウェイ、サブネットマスクはDHCPで取得されます。
文法 int Ethernet.begin(mac[6])
Ethernet.begin(mac[6], ip[4])
Ethernet.begin(mac[6], ip[4], dns[4])
Ethernet.begin(mac[6], ip[4], dns[4], gateway[4])
Ethernet.begin(mac[6], ip[4], dns[4], gateway[4], subnet[4])
パラメータ mac: MACアドレス
ip: IPアドレス
dns: ネームサーバーのアドレス
gateway: デフォルトゲートウェイのアドレス
subnet: サブネットマスク
戻り値 Ethernet.begin(mac[6])のみ成功したら1、失敗したら0を返す。

localIP

概要 自分のIPアドレスを文字列で受け取ります。
文法 char* Ethernet.localIP
パラメータ なし
戻り値 自分のIPアドレス

isLinkup

概要 LANがリンクアップ(通信可能になっている)か調べます。
文法 bool Ethernet.isLinkup()
パラメータ なし
戻り値 成功したらtrue、失敗したらfalseを返します。

Ping

概要 ターゲットホスト名を指定してPingを送ります。
文法 bool Ethernet.Ping(const char* hostname)
bool Ethernet.Ping(byte ip[4])
パラメータ Pingを送りたいホスト名かIPアドレス
戻り値 1回でも成功したらtrueを返します。全て失敗したらfalseを返します。

gethostbyname

概要 DNSにアクセスして、ホスト名からIPアドレスを調べます。
文法 byte* Ethernet.gethostbyname(const char* hostname)
パラメータ hostname: 調べたいホスト名
戻り値 成功したらIPアドレスが格納された配列を返します。失敗したら0.0.0.0が格納された配列を返します。

dhcp

概要 DHCPでIPアドレスやDNS、ゲートウェイ等の取得を再実行します。
文法 bool Ethernet.dhcp()
パラメータ なし
戻り値 成功したらtrue、失敗したらfalseを返します。

sendUDP

概要 UDPパケットを送ります。
文法 bool Ethernet.sendUDP(byte ip[4], short port, byte* buf, int len)
パラメータ ip: 送信先のIPアドレスが格納された配列
port: 送信先のポート番号
送信したいデータが格納されたバッファ
送信したいデータ長
戻り値 成功したらtrue、失敗したらfalseを返します。

registUdpHandler

概要 UDPを受信したときにコールバックされる関数を登録する。登録される関数はprocessPackets()の中から呼び出されるため、processPackets()を繰り返し呼び出さないと受信処理は行われません。
文法 Ethernet.registUdpHandler(func)
パラメータ func: UDPを受信したときにコールバックされる関数
戻り値 なし

processPackets

概要 Ethernetの受信処理を進める。この関数が呼び出されると、受信パケットの有無を調べ、パケットの内容に応じて受信処理を進めます。受信エラーの解除も行われます。
文法 Ethernet.processPackets()
パラメータ なし
戻り値 なし


サンプルプログラム

編集中です。

編集中#include <rxduino.h>

桜ライブラリ

春ライブラリ

めいど by がじぇっとるねさすプロジェクト
Contents are CC BY-SA 3.0