2016-10-15 5 views
1

私はesp8266にデータを送信したいと思います。データを送信するにはesp8266

私はarudino fwを使用しています。

String request = client.readStringUntil('\n'); 

    char chars[1000]; 
    char data[100]; 
    bool startRead =false; 
    request.toCharArray(chars,1000); 
    int counter=0; 
    for(int i =0;i<1000;i++){ 

     if(chars[i]=='>'){ 
     startRead=false; 
     } 

     if(startRead==true){ 
     data[counter]=chars[i]; 
     counter++; 
     } 

     if(chars[i]=='<') 
     startRead=true; 

    } 
    String output(data); 

    // Serial.println(request); 
    Serial.println(output); 
     client.flush(); 

私はいくつかのデータを取得するが、信頼性がありませんit's:

データは、私はこれを試してみましたURL です。

私が "192.168.4.1/HelloWorld"を呼び出す場合は、HelloWorldという文字列が必要です。

アイデア? ありがとう!

答えて

1

APモードからデータを取得するためにWebServerを使用する方がよい。以下のコードをプロジェクトに結合し、HTTPリクエストをhttp://192.168.4.1/text?data=HelloWorldのようにします。

#include <ESP8266WebServer.h> 
ESP8266WebServer server(80); 

void handleText() { 
    String message = ""; 
    for (uint8_t i=0; i<server.args(); i++){ 
    message += server.argName(i) + ": " + server.arg(i) + "\n"; 
    } 
    server.send(200, "text/plain", message); 
} 

void setup(void){ 
    //.. 
    server.on("/text", handleText); 
    server.begin(); 
    Serial.println("HTTP server started"); 
    //.. 
} 

void loop(void){ 
    server.handleClient(); 
} 
0

または.... MQTTプロトコルを使用できます。私はあなたが達成しようとしていることを正確には知らない。

私はPubSubライブラリー(https://github.com/knolleary/pubsubclient)+任意のMQTTブローカーを使用して、実際にesp8266にデータを送信します。私はホームオートメーションのためにそれを使用し、私のセントラルヒーティング、ライトなどを制御します。

私の2セント。 乾杯!

関連する問題