ESP8266-利用网页控制ESP8266

说明:发出/gpio/1   就输出 "亮灯";   /gpio/0  就输出 "灭灯" 

#include <ESP8266WiFi.h>

const char* ssid = "jia";  //这里输入wifi名称
const char* password = "lm654321";  //这里输入wifi密码

WiFiServer server(80);//开启板子的80端口
int val=2;

void setup() {
  Serial.begin(115200);
  delay(10);

   //接下来板子开始要连线到路由器了
  Serial.println();
  Serial.println();
  Serial.print("lianjie to ");
  Serial.println(ssid);

  WiFi.begin(ssid, password);//开始连线

  while (WiFi.status() != WL_CONNECTED) {  //如果没有连接成功,就输入"."
    delay(500);
    Serial.print(".");
  }
  Serial.println();
  Serial.println("WiFi lianxian cengong");//输入wifi连线成功

  server.begin();  //开启服务器
  Serial.println("Server started");//输出服务器开始启动
  Serial.println(WiFi.localIP());//输出IP
}

void loop() {

  WiFiClient client = server.available();//判断有无可以读取的信息
  if (client) {    //如果有
    String req = client.readStringUntil('\r');
    if (req != ""){
      Serial.println(req);}
    if (req.indexOf("/gpio/0") != -1){  //如果req中包含"/gpio/0"
      val=0;
      }
      else if (req.indexOf("/gpio/1") != -1) {  //如果req中包含"/gpio/1"
    val=1;}
    else {
      Serial.println("wuxiao qinqiu");}
        //下面执行相应的指令
    if (val == 0){
      val=2;//执行一次让val无效
      Serial.println("mie den");}
    if (val == 1){
      val=2;
      Serial.println("lian den");}
  }
}

连接成功返回的信息:

 

网页发送指令:192.168.188.191/gpio/1   或    192.168.188.191/gpio/0

 

网页每次发送指令,板子可以收到的指令如下图:

 

 注意:网页发送指令会发送两次,指令执行两次

 

posted @ 2019-06-11 16:52  天子骄龙  阅读(6468)  评论(0编辑  收藏  举报