在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() {
}
感兴趣的可以复制代码测试