Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arduino 如何通过ESP8266创建TCP服务器?_Arduino_Tcpserver_Esp8266 - Fatal编程技术网

Arduino 如何通过ESP8266创建TCP服务器?

Arduino 如何通过ESP8266创建TCP服务器?,arduino,tcpserver,esp8266,Arduino,Tcpserver,Esp8266,我想在Arduino IDE中通过ESP8266创建一个简单的Wifi TCP服务器。但我有一个大问题:当我从客户端发送一个字符或字符串时,我无法在服务器上接收它 事实上,我将esp8266连接到我的PC,我想在PC终端中看到来自客户端的发送字符。 我的发送端是android的Socket协议应用程序!我在服务器端写的完整代码是: WiFiServer server(8888); void setup() { initHardware(); setupWiFi(); server.

我想在Arduino IDE中通过ESP8266创建一个简单的Wifi TCP服务器。但我有一个大问题:当我从客户端发送一个字符或字符串时,我无法在服务器上接收它

事实上,我将esp8266连接到我的PC,我想在PC终端中看到来自客户端的发送字符。 我的发送端是android的Socket协议应用程序!我在服务器端写的完整代码是:

WiFiServer server(8888);
void setup() 
{
  initHardware();
  setupWiFi();
  server.begin();
}
void loop() 
{
  WiFiClient client = server.available();
  if (client) {
    if (client.available() > 0) {
      char c = client.read();
      Serial.write(c);
    }
  }
}
void setupWiFi()
{
  WiFi.mode(WIFI_AP);
  WiFi.softAP("RControl", WiFiAPPSK);
}

void initHardware()
{
  Serial.begin(115200);
}

波特率两边都设置为115200。

在循环中,一旦建立了客户端连接,就要关闭客户端连接,删除
WiFiClient
对象

为了保持连接打开,您可以修改循环,如下所示:

WiFiClient client;
void loop() 
{
    if (!client.connected()) {
        // try to connect to a new client
        client = server.available();
    } else {
        // read data from the connected client
        if (client.available() > 0) {
            Serial.write(client.read());
        }
    }
}

当客户端未连接时,它尝试连接一个客户端,当客户端连接时,它读取传入数据

请提供更多的代码,看到双方都会有帮助。@Marged:我也会这么认为,但“不接收”并不意味着“但程序在发送端成功执行”。当我单击发送按钮时,我的发送端是SocketProtocol应用程序,其状态变为发送消息!我想那不能传递信息!你有没有看电视?哇!非常感谢mpromonet。这是正确的工作方式!这是一个有用的链接。