【ゼロ知見ESP 8266チュートリアル】APモードでのWIFI UDPプロトコル通信例


このスレッドは主にESP 8266 WIFI機能のUDPプロトコルネットワーク伝送に関する応用を説明し、ここではESP 8266のAPモードにおけるUDP通信の例を示した:1、ハードウェア
  • 零知ESP 8266開発ボード2、ソフトウェア(1)コードは以下の通り:
  • `/**********************************************************
    *      : udp-server.ino      by      ([url=http://www.lingzhilab.com]www.lingzhilab.com[/url])
    *    -^^-     ,          ! -^^-
    *      : 2019/06/17 11:42
    *      :
    ************************************************************/
    #include 
    #include 
     
    unsigned int UDPPort = 8888;      // local port to listen on
     
    char packetBuffer[255]; //buffer to hold incoming packet
    char  ReplyBuffer[] = "acknowledged";       // a string to send back
    WiFiUDP Udp;
     
    //           :
    void setup() {
            //            ,     :
            Serial.begin(115200);
             
            WiFi.softAP("Wi-Fi");
            Udp.begin(UDPPort);
            Serial.println();
            Serial.println("Started ap. Local ip: " + WiFi.localIP().toString());
    }
     
    //      :
    void loop() {
            //            ,    :
            // if there's data available, read a packet
            int packetSize = Udp.parsePacket();
            if (packetSize) {
                    Serial.print("Received packet of size ");
                    Serial.println(packetSize);
                    Serial.print("From ");
                    IPAddress remoteIp = Udp.remoteIP();
                    Serial.print(remoteIp);
                    Serial.print(", port ");
                    Serial.println(Udp.remotePort());
                     
                    // read the packet into packetBufffer
                    int len = Udp.read(packetBuffer, 255);
                    if (len > 0) {
                            packetBuffer[len] = 0;
                    }
                    Serial.println("Contents:");
                    Serial.println(packetBuffer);
                    // send a reply, to the IP address and port that sent us the packet we received
                    Udp.beginPacket(Udp.remoteIP(), Udp.remotePort());
                    Udp.write(ReplyBuffer);
                    Udp.endPacket();
            }
    }`
    

    (2)上記のコードを検証して零知ESP 8266にアップロードし、シリアルデバッグウィンドウを開くと、【零知ESP8266教程】AP模式下WIFI UDP协议通信示例_第1张图片(3)上記の手順が完了した後、ESP 8266をホットスポットとして、SSIDの名前は「WI-FI」で、パソコンで以下の情報を見ることができます.
    【零知ESP8266教程】AP模式下WIFI UDP协议通信示例_第2张图片 【零知ESP8266教程】AP模式下WIFI UDP协议通信示例_第3张图片(4)零知ツールボックス(零知公式サイトで無料で入手可能)を開き、IPアドレスとポート番号を記入し、「接続」をクリックするとESP 8266と通信できます.3、テスト検証:シリアルポートデバッグウィンドウと零知ツールボックスの送受信エリアで以下のデータ伝送情報を見ることができる:【零知ESP8266教程】AP模式下WIFI UDP协议通信示例_第4张图片