Python TCP 服务器与 ESP32 通信

问题描述

我有一个运行此代码的 Python 服务器:

import socket

s = socket.socket()
s.bind(('192.168.1.11',5000))
s.listen(0)

while True:
    client,addr = s.accept()

    while True:
        content = client.recv(32)
        if len(content) == 0:
            break
        else:
            print(content)

    client.send(bytes('{\"accel\",\"gyro\",\"time\":1}',"utf-8"))
    print("Closing connection")
    client.close()

我希望我的 ESP32 与服务器进行双向通信。

这是 Arduino 代码

#include <WiFi.h>

const char* ssid = "#########";
const char* password =  "######";
 
const uint16_t port = 5000;
const char * host = "192.168.1.11";
 
void setup() {
  Serial.begin(115200);
 
  WiFi.begin(ssid,password);

  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.println("...");
  }
 
  Serial.print("WiFi connected with IP: ");
  Serial.println(WiFi.localIP());
}
 
void loop() {
  WiFiClient client;
 
  if (!client.connect(host,port)) {
    Serial.println("Connection to host Failed");
    delay(1000);
    return;
  }
 
  Serial.println("Connected to server successful!");
 
  client.print("Hello from ESP32!");

  if (client.available()) {
    char c = client.read();
    Serial.write(c);
  }

    char c = client.read();
  
    Serial.println("disconnecting...");
    client.stop();
 
    delay(10000);
}

到目前为止,我已经成功地将数据从 ESP32 发送到服务器。但是一直无法从服务器向ESP32发送命令。

我想将 JSON 从服务器发送到 ESP32。任何帮助将不胜感激

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)