zoukankan      html  css  js  c++  java
  • ESP8266 智能配网 断电重连

    ESP8266 智能配网 断电重连

    #include <ESP8266WiFi.h>
    
    bool autoConfig()
    {
      WiFi.begin();
      for (int i = 0; i < 20; i++)
      {
        int wstatus = WiFi.status();
        if (wstatus == WL_CONNECTED)
        {
          Serial.println("AutoConfig Success");
          Serial.printf("SSID:%s
    ", WiFi.SSID().c_str());
          Serial.printf("PSW:%s
    ", WiFi.psk().c_str());
          WiFi.printDiag(Serial);
          return true;
          //break;
        }
        else
        {
          Serial.print("AutoConfig Waiting......");
          Serial.println(wstatus);
          delay(1000);
        }
      }
      Serial.println("AutoConfig Faild!" );
      return false;
      //WiFi.printDiag(Serial);
    }
    void smartConfig()
    {
      WiFi.mode(WIFI_STA);
      Serial.println("
    Wait for Smartconfig");
      WiFi.beginSmartConfig();
      while (1)
      {
        Serial.print(".");
        if (WiFi.smartConfigDone())
        {
          Serial.println("SmartConfig Success");
          Serial.printf("SSID:%s
    ", WiFi.SSID().c_str());
          Serial.printf("PSW:%s
    ", WiFi.psk().c_str());
          WiFi.setAutoConnect(true);  // 设置自动连接
          break;
        }
        delay(1000); // 这个地方一定要加延时,否则极易崩溃重启
      }
    }
    
    void setup()
    {
      Serial.begin(115200);
    
      if (!autoConfig())
      {
        Serial.println("Start module");
        smartConfig();
      }
    }
    
    void loop()
    {
      delay(1000);
      Serial.println("loop");
    }
    

    参考链接

  • 相关阅读:
    Redis和Memcache的区别
    j2EE框架collection
    总结乐观锁和悲观锁
    lunix,命令集锦
    遍历Map集合的方法
    arrayList和vector的区别
    python借助zookeeper实现分布式服务(二)
    python借助zookeeper实现分布式服务(一)
    zookeeper常用命令
    python实现事件驱动模型
  • 原文地址:https://www.cnblogs.com/GetcharZp/p/11642800.html
Copyright © 2011-2022 走看看