Отправить данные датчика по Wi-Fi от одного Arduino к другому Arduino - PullRequest
0 голосов
/ 16 января 2020

Я хочу отправить данные, полученные одним arduino от гибкого датчика, в другое arduino, которое выполняет действия на основе полученных данных, и я хочу сделать этот процесс передачи данных по Wi-Fi. Можете ли вы помочь мне, как я могу это сделать. Я хочу настроить сервер на любом из этих Arduinos или на чем-то еще?

Если я хочу настроить сервер, то как я могу это сделать?

1 Ответ

1 голос
/ 16 января 2020

Объект WiFiClient оборачивает сокет TCP. Обычный сокет TCP подключен к IP-адресу и порту. WiFiServer запускает прослушивающий сокет на порту. Если сервер на прослушивающем сокете связывается с удаленным клиентским сокетом, он создает локальный сокет, связанный с удаленным клиентским сокетом на свободном порту, и возвращает объект WiFiClient, обертывающий сокет. Все, что вы пишете или печатаете на WiFiClient, отправляется в этот один удаленный сокет.

Если одна из ваших клиентских плат создает WiFiClient и подключает его к IP-адресу и порту WiFiServer на вашей «серверной» плате, то Вы получаете там WiFiClient от server.available (), и эти два объекта WiFiClient связаны. То, что вы пишете / печатаете на одной стороне, вы читаете только с объекта WiFiClient на другой стороне.

клиентское гнездо

if (client.connect(serverIP, PORT)) {
  client.print("request\n");
  String response = client.readStringUntil('\n');
  Serial.println(response);
  client.stop();
}

на стороне сервера

WiFiClient client = server.available();
if (client && client.connected()) {
  String request = client.readStringUntil('\n');
  Serial.println(request);
  client.print("response\n");
  client.stop();
}

см. Пример ChatServer для примера WiFiServer

...