ESP8266用EspTouch一键配网,断网自动恢复连接 |
您所在的位置:网站首页 › 断网神器下载 › ESP8266用EspTouch一键配网,断网自动恢复连接 |
自动配网的实现
利用Arduino IDE自带的自动联网函数smartConfig()
bool AutoConfig()
{
WiFi.begin();
//如果觉得时间太长可改
for (int i = 0; i
Serial.println("WIFI SmartConfig Success");
Serial.printf("SSID:%s", WiFi.SSID().c_str());
Serial.printf(", PSW:%s\r\n", WiFi.psk().c_str());
Serial.print("LocalIP:");
Serial.print(WiFi.localIP());
Serial.print(" ,GateIP:");
Serial.println(WiFi.gatewayIP());
return true;
}
else
{
Serial.print("WIFI AutoConfig Waiting......");
Serial.println(wstatus);
delay(1000);
}
}
Serial.println("WIFI AutoConfig Faild!" );
return false;
}
如果8266已经配网,那么它会默认连接上一次的网络 如果是第一次配置网络,它会等待120秒钟,寻找内存中是否已配置过网络,确认连接不上网络后,进入智能配网程序 void smartConfig() { WiFi.mode(WIFI_STA); Serial.println("\r\nWait for Smartconfig等待连接"); delay(2000); // 等待配网 WiFi.beginSmartConfig(); while (1) { Serial.print("."); delay(500); if (WiFi.smartConfigDone()) { Serial.println("SmartConfig Success"); Serial.printf("SSID:%s\r\n", WiFi.SSID().c_str()); Serial.printf("PSW:%s\r\n", WiFi.psk().c_str()); WiFi.setAutoConnect(true); // 设置自动连接 break; } } Serial.println(""); Serial.println("WiFi connected"); Serial.println("IP address: "); Serial.println(WiFi.localIP()); }
最终的程序我放在下面 #include void smartConfig() { WiFi.mode(WIFI_STA); Serial.println("\r\nWait for Smartconfig等待连接"); delay(2000); // 等待配网 WiFi.beginSmartConfig(); while (1) { Serial.print("."); delay(500); if (WiFi.smartConfigDone()) { Serial.println("SmartConfig Success"); Serial.printf("SSID:%s\r\n", WiFi.SSID().c_str()); Serial.printf("PSW:%s\r\n", WiFi.psk().c_str()); WiFi.setAutoConnect(true); // 设置自动连接 break; } } Serial.println(""); Serial.println("WiFi connected"); Serial.println("IP address: "); Serial.println(WiFi.localIP()); } //自动配网函数,成功配对以后设备会记忆密码,通电自动连接 bool AutoConfig() { WiFi.begin(); //如果觉得时间太长可改 for (int i = 0; i Serial.println("WIFI SmartConfig Success"); Serial.printf("SSID:%s", WiFi.SSID().c_str()); Serial.printf(", PSW:%s\r\n", WiFi.psk().c_str()); Serial.print("LocalIP:"); Serial.print(WiFi.localIP()); Serial.print(" ,GateIP:"); Serial.println(WiFi.gatewayIP()); return true; } else { Serial.print("WIFI AutoConfig Waiting......"); Serial.println(wstatus); delay(1000); } } Serial.println("WIFI AutoConfig Faild!" ); return false; } void setup() { Serial.begin(9600); if (!AutoConfig()) { smartConfig(); } } void loop() { delay(100); }这样一个自动配网的程序就可以结合物联网平台程序制作智能开关了,关于物联网,大家可以参考我之前的文章,一起学习交流。 小爱同学,小度同时控制灯 如何实现8266程序外网升级 抖音粉丝推送到微信,酷!! 超级简单的内网穿透,重点是免费… 如何开发微信小程序控制ESP8266模块? 怎么在WIN10系统上搭建自己的物联网服务器 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |