Arduino:Библиотеки/Ethernet/Класс EthernetUDP/read()
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Функция read()[1]
Считывает UDP-данные из указанного буфера. Если никаких аргументов не задано, возвращает следующий символ, находящийся в буфере.
Эту функцию можно вызывать только после EthernetUDP.parsePacket(). В противном случае она работать не будет.
Синтаксис
EthernetUDP.read()
EthernetUDP.read(packetBuffer, MaxSize)
Параметры
packetBuffer – буфер, содержащий входящие пакеты. Тип данных – char
MaxSize – максимальный размер буфера. Тип данных – int
Что возвращает
Символы, находящиеся в буфере. Тип данных – char.
Пример
#include <SPI.h>
#include <Ethernet.h>
#include <EthernetUdp.h>
// Ниже введите MAC-адрес и IP-адрес для своего контроллера.
// IP-адрес будет зависеть от локальной сети:
byte mac[] = {
0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192, 168, 1, 177);
unsigned int localPort = 8888; // локальный порт, который нужно прослушивать
// экземпляр EthernetUDP, необходимый для получения и передачи пакетов через UDP:
EthernetUDP Udp;
char packetBuffer[UDP_TX_PACKET_MAX_SIZE]; // буфер для хранения входящих пакетов
void setup() {
// запускаем Ethernet и UDP:
Ethernet.begin(mac,ip);
Udp.begin(localPort);
}
void loop() {
int packetSize = Udp.parsePacket();
if(packetSize)
{
Serial.print("Received packet of size "); // "Размер присланного пакета "
Serial.println(packetSize);
Serial.print("From "); // "От "
IPAddress remote = Udp.remoteIP();
for (int i =0; i < 4; i++)
{
Serial.print(remote[i], DEC);
if (i < 3)
{
Serial.print(".");
}
}
Serial.print(", port "); // ", порт "
Serial.println(Udp.remotePort());
// считываем пакет в packetBufffer:
Udp.read(packetBuffer,UDP_TX_PACKET_MAX_SIZE);
Serial.println("Contents:"); // "Содержимое:"
Serial.println(packetBuffer);
}
}
См.также
Внешние ссылки
Категории:
- Страницы, использующие повторяющиеся аргументы в вызовах шаблонов
- Справочник языка Arduino
- Arduino
- Перевод от Сubewriter
- Проверка:myagkij
- Оформление:myagkij
- Редактирование:myagkij
- Стандартные библиотеки
- Стандартная библиотека
- Стандартная библиотека Arduino
- Стандартные библиотеки Arduino
- Библиотека Ethernet
- Стандартная библиотека Ethernet
- Ethernet
- Функция