EthernetUDP.write()

描述

把资料写进要透过 UDP 传送的封包。write() 必须在 beginPacket()endPacket() 之间呼叫,beginPacket() 会初始化 UDP 封包,初始化后我们可以透过 write() 把资料写入封包中,要传送的资料都写入封包后呼叫 endPacket() 把封包传送出去。使用 86Duino 时封包最大可达 512 位元组,如果使用的是 arduino 封包最大可达 24 位元组。

语法


Udp.write(message);
Udp.write(buffer, size);

参数

message:要写入封包的资料,型态是 charstring
buffer:存有要写入封包资讯的阵列,型态是 bytechar
sizebuffer 的大小

回传

byte:回传写入封包的位元组数量

范例

#include <Ethernet.h>
#include <EthernetUdp.h>

// 输入本地端的 IP 位址
IPAddress ip(192, 168, 1, 177);

// 要监听的本地端埠编号
unsigned int localPort = 8888;

// 创建一个 EthernetUDP 物件,我们可以藉由这个物件收发 UDP 的封包
EthernetUDP Udp;

void setup() {
  // 开始 Ethernet 和 EthernetUDP
  Ethernet.begin(NULL,ip);
  Udp.begin(localPort);
}

void loop() {
  Udp.beginPacket(Udp.remoteIP(), Udp.remotePort());
  Udp.write("hello");
  Udp.endPacket();
}

函式库参考主页

The text of the 86Duino reference is a modification of the Arduino reference, and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.