Предварительная подготовка
=======
-
Arduino IDE
-
ESPDuino
-
Файл версии Arduino ESP8266
Экспериментальные требования
Сетевая связь достигается путем установки платы разработки ESPDuino в режим TCP-клиента.
Обзор связи TCP
TCP: протокол управления передачей.
Протокол TCP является протоколом связи, ориентированным на соединение, то есть перед передачей данных между отправителем и получателем устанавливается логическое соединение, а затем данные передаются, что обеспечивает надежную и безошибочную передачу данных между двумя компьютерами.
TCP предназначен для размещения многоуровневой иерархии протоколов, которая поддерживает несколько сетевых приложений. Службы надежной связи предоставляются между парами процессов на хост-компьютерах, подключенных к разным, но взаимосвязанным компьютерным коммуникационным сетям, основанным на протоколе TCP. TCP предполагает, что он может получить простую, возможно, ненадежную службу дейтаграмм от протоколов более низкого уровня. В принципе, TCP должен быть способен работать в различных системах связи, от проводных до сетей с коммутацией пакетов или сетей с коммутацией каналов.
конкретный метод
Авторизоватьсяtcp.doit.am, чтобы получить IP и порт для использования:
программа
#include<ESP8266WiFi.h>
const char*ssid ="STM32L476";
const char*password ="284122348";
const char*serverIP ="115.29.109.104";
int serverPort =6558;
WiFiClient client;
bool bConnected =false;
char buff[512];
int nm =0;
void setup(){
Serial.begin(115200);
delay(10);
Serial.println();
Serial.println();
Serial.print("Connecting to");
Serial.println(ssid);
WiFi.begin(ssid,password);
while(WiFi.status()!=WL_CONNECTED){
delay(500);
Serial.print(".");
}
Serial.println("WiFi connected");
Serial.println("IP address:");
Serial.println(WiFi.localIP());
}
void loop(){
delay(1);
if(bConnected ==false)
{
if(!client.connect(serverIP,serverPort))
{
Serial.println("connection failed");
delay(5000);
return;
}
bConnected=true;
Serial.println("connection ok");
}
else if(client.available())
{
Serial.println("data is coming");
while(client.available())
{
buff[nm++]=client.read();
if(nm>=511)break;
}
buff[nm]=0x00;
nm=0;
Serial.print(buff);
client.print(buff);
client.flush();
}
}
Экспериментальные явления
следовать за
Просто нажмите, если хотите
Писать не легко, спасибо за поддержку.
В этой статье используетсяПомощник по синхронизации статейСинхронизировать