esp8266-01s配网程序

在01S以及D1mini上测试正常
程序;
//智能配网
#include <ESP8266WiFi.h> //WIFI库,配网必需

int count = 0; //时间计数
bool WIFI_Status = true; //WIFI状态标志位

/* 微信智能配网 */
void smartConfig()
{
WiFi.mode(WIFI_STA);//设置STA模式
Serial.println("\r\nWait for Smartconfig…");//打印log信息
WiFi.beginSmartConfig();//开始SmartConfig,等待手机端发出用户名和密码
while(1)
{
Serial.println(".");
digitalWrite(LED_BUILTIN,HIGH);//指示灯闪烁
delay(1000);
digitalWrite(LED_BUILTIN,LOW);//指示灯闪烁
delay(1000);
if(WiFi.smartConfigDone())//配网成功,接收到SSID和密码
{
Serial.println(“SmartConfig Success”);
Serial.printf(“SSID:%s\r\n”, WiFi.SSID().c_str());
Serial.printf(“PSW:%s\r\n”, WiFi.psk().c_str());
break;
}
}
}

/连接网络/
void blinkerConnect()
{
Serial.println("\r\n正在连接WIFI…");

while(WiFi.status()!=WL_CONNECTED)//判断是否连接WIFI成功
{
  if(WIFI_Status)
  {
      Serial.print(".");
      digitalWrite(LED_BUILTIN, HIGH);  
      delay(500);                       
      digitalWrite(LED_BUILTIN, LOW);    
      delay(500);                 
      count++;
      if(count>=5)//5s
      {
          WIFI_Status = false;
          Serial.println("WiFi连接失败,请用手机进行配网"); 
      }        
    }
    else
    {
      smartConfig();  //微信智能配网
    }
}

Serial.println("连接成功");  
Serial.print("IP:");
Serial.println(WiFi.localIP());

}

void setup() {

// 初始化有LED  LED_BUILTIN 为开发板的指示灯管脚
pinMode(LED_BUILTIN, OUTPUT);
digitalWrite(LED_BUILTIN, HIGH);

//网络连接
blinkerConnect();

}

void loop() {
}

感兴趣的可以复制代码测试

猜你喜欢

转载自blog.csdn.net/weixin_45442198/article/details/121454259
今日推荐