WiFiUDP

Класс WiFiUDP

Класс WiFiUDP используется для отправки и получения UDP-сообщений по Wi-Fi.

WiFiUDP

Описание

Создаёт именованный экземпляр класса WiFi UDP, который может отправлять и получать UDP-сообщения. На платах на базе AVR исходящие UDP-пакеты в настоящее время ограничены размером 72 байта. Для плат, не основанных на AVR, ограничение составляет 1446 байт.

Синтаксис

WiFiUDP

Параметры

нет

WiFiUDP.begin()

Описание

Инициализирует библиотеку WiFi UDP и сетевые настройки. Запускает сокет WiFiUDP, прослушивающий локальный порт PORT.

Синтаксис

WiFiUDP.begin(port);

Параметры

  • port: локальный порт для прослушивания (int)

Возвращаемое значение

  • 1: если успешно

  • 0: если нет доступных сокетов

WiFiUDP.available()

Описание

Получает количество байтов (символов), доступных для чтения из буфера. Это данные, которые уже поступили.

Эта функция может быть успешно вызвана только после WiFiUDP.parsePacket().

available() наследуется от служебного класса Stream.

Синтаксис

WiFiUDP.available()

Параметры

Нет

Возвращаемое значение

  • Количество байтов, доступных в текущем пакете

  • 0: если parsePacket ещё не был вызван

WiFiUDP.beginPacket()

Описание

Начинает соединение для записи UDP-данных в удалённое подключение.

Синтаксис

WiFiUDP.beginPacket(hostName, port);
WiFiUDP.beginPacket(hostIp, port);

Параметры

  • hostName: адрес удалённого хоста. Принимает символьную строку или IPAddress.

  • hostIp: IP-адрес удалённого подключения (4 байта)

  • port: порт удалённого подключения (int)

Возвращаемое значение

  • 1: если успешно

  • 0: если возникла проблема с указанным IP-адресом или портом

WiFiUDP.endPacket()

Описание

Вызывается после записи UDP-данных в удалённое подключение. Завершает формирование пакета и отправляет его.

Синтаксис

WiFiUDP.endPacket();

Параметры

Нет

Возвращаемое значение

  • 1: если пакет был успешно отправлен

  • 0: если произошла ошибка

WiFiUDP.write()

Описание

Записывает UDP-данные в удалённое подключение. Должна быть обёрнута между beginPacket() и endPacket(). beginPacket() инициализирует пакет данных, он не отправляется до вызова endPacket().

Синтаксис

WiFiUDP.write(byte);
WiFiUDP.write(buffer, size);

Параметры

  • byte: исходящий байт

  • buffer: исходящее сообщение

  • size: размер буфера

Возвращаемое значение

  • Один байт помещается в пакет

  • Байты размера size из буфера помещаются в пакет

WiFiUDP.parsePacket()

Описание

Начинает обработку следующего доступного входящего пакета, проверяет наличие UDP-пакета и сообщает его размер. parsePacket() должен быть вызван перед чтением буфера с помощью UDP.read().

Синтаксис

UDP.parsePacket();

Параметры

Нет

Возвращаемое значение

  • Размер пакета в байтах

  • 0: если нет доступных пакетов

WiFiUDP.peek()

Считывает байт из файла без перехода к следующему. То есть последовательные вызовы peek() будут возвращать одно и то же значение, как и следующий вызов read().

Эта функция унаследована от класса Stream. Более подробную информацию смотрите на главной странице класса Stream.

Синтаксис

WiFiUDP.peek()

Параметры

нет

Возвращаемое значение

  • b: следующий байт или символ

  • -1: если ничего не доступно

WiFiUDP.read()

Описание

Считывает UDP-данные из указанного буфера. Если аргументы не указаны, возвращает следующий символ в буфере.

Эта функция может быть успешно вызвана только после WiFiUDP.parsePacket().

Синтаксис

WiFiUDP.read();
WiFiUDP.read(buffer, len);

Параметры

  • buffer: буфер для хранения входящих пакетов (char*)

  • len: максимальный размер буфера (int)

Возвращаемое значение

  • b: символы в буфере (char)

  • size: размер буфера

  • -1: если буфер не доступен

WiFiUDP.flush()

Сбрасывает все байты, которые были записаны клиенту, но ещё не прочитаны.

flush() наследуется от служебного класса Stream.

Синтаксис

WiFiUDP.flush()

Параметры

нет

Возвращаемое значение

нет

WiFiUDP.stop()

Описание

Отключение от сервера. Освобождает все ресурсы, используемые во время UDP-сессии.

Синтаксис

WiFiUDP.stop()

Параметры

нет

Возвращаемое значение

нет

WiFiUDP.remoteIP()

Описание

Получает IP-адрес удалённого подключения.

Эта функция должна быть вызвана после WiFiUDP.parsePacket().

Синтаксис

WiFiUDP.remoteIP();

Параметры

Нет

Возвращаемое значение

4 байта: IP-адрес хоста, отправившего текущий входящий пакет.

WiFiUDP.remotePort()

Описание

Получает порт удалённого UDP-подключения.

Эта функция должна быть вызвана после UDP.parsePacket().

Синтаксис

UDP.remotePort();

Параметры

Нет

Возвращаемое значение

Порт хоста, отправившего текущий входящий пакет.