Отправка Широковещательного пакета UDP
- Войдите на сайт для отправки комментариев
Чт, 29/09/2016 - 21:03
Здравствуйте!
Подскажите пожалуйста как можно отправить UDP широковещательный пакет.
Пробую сделать вот так:
#include <SPI.h> #include <Ethernet.h> #include <EthernetUdp.h> byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; IPAddress ip(192, 168, 0, 177); unsigned int localPort = 8888; EthernetUDP Udp; void setup() { Ethernet.begin(mac,ip); Udp.begin(localPort); } void loop() { Udp.beginPacket("192.168.0.255", "8881"); Udp.write("hello"); Udp.endPacket(); delay(10); }
Что-то не выходет, есть подазрение что в неправильном формате указал ip и port в
Udp.beginPacket
Подскажите пожалуйста где промах?
Спасибо!
Поскольку
Syntax
UDP.beginPacket(remoteIP, remotePort);
Parameters
remoteIP: the IP address of the remote connection (4 bytes)
remotePort: the port of the remote connection (int)
Спасибо за помощь, разобрался!
Вот что получилось:
Еще раз СПАСИБО!
Здравствуйте!
Подскажите пожалуйста как правильно отправить данные.
Я делаю вот так:
И в место нормальных данных(цифр), получаю белиберду.(
В Sereal.print, это решается просто Serial.print(val,DEC);, а в моей ситуации как это решить?
P.S. Задача бередать данные с АЦП по средствам UDP.
Спасибо!
Или переводить в DEC на принимающей стороне?
analogRead() возвращает значение типа int, а Вы его в переменную типа char принимаете, это не есть хорошо.
Araris, Спасибо!
Согласен, не досмотрел, но суть от этого не сильно меняется.
Все равно идет белибирда(
Пока немогу понять как это решить(
СПС!
Ещё можно попробовать
вместо
Udp.write(val);
отправлять как
Udp.print(String(val)); или Udp.write(String(val));
Araris, Вроде помогло, Спасибо!