ESP8266 WEB配网 掉电记忆

描述

之前有使用W600实现该功能,但现在考虑到使用的方便性,遂决定使用 Arduino和esp8266来实现

其中WEB配网的部分大家应该能查询到不少,这边进行一个简单介绍,首先需要一个html文件

配网

我这里是用了一个带服务器IP和端口的,方便我以后使用的,大家可以针对性的写自己的部分

关于HTML5语言的内容就不展开讲了,这里主要是使用的按钮实现的olclick传递的参数,在Arduino里面可以直接获取
 

 

/*****************************************************
 * 函数名称:HandleVal()
 * 函数说明:对客户端请求返回值处理
 * 参数说明:无
******************************************************/
void HandleVal()
{
     GET_SSID = server.arg("ssid"); //从JavaScript发送的数据中找ssid的值
     GET_PASSWORD = server.arg("password"); //从JavaScript发送的数据中找password的值
     TCP_IP = server.arg("tcp_ip");
     TCP_PORT = server.arg("tcp_port");
     Serial.printf("234:%srn", GET_SSID.c_str());
     Serial.printf("235:%srn", GET_PASSWORD.c_str());
     Serial.printf("TCPIP:%srn", TCP_IP.c_str());
     Serial.printf("TCPoirt:%srn", TCP_PORT.c_str());
     WiFi.begin(GET_SSID,GET_PASSWORD);
}

 

 

 

如上,可以直接得到传递的具体内容,直接进行联网即可

下面是关于掉电保存的内容,我的思想是在一个地址存储SSID的长度 另一个地址存储PASSWORD的长度(一般都不超过255),故使用byte类型足够,其中主要段落如下,通过这种方式便可以实现掉电保存当前WIFI信息

 

#include < EEPROM.h >
byte SISSD_ADDR = 0;
byte PASSWORD_ADDR = 100;
byte TCP_ADDR = 200;
byte SISSD_NUM = 0;
byte PASSWORD_NUM = 0;
 
 
void setup(void) {
  
    EEPROM.begin(1024);
 
}
 
 
 if (WiFi.status() == WL_CONNECTED)
{
 
          
SISSD_NUM = GET_SSID.length();
PASSWORD_NUM = GET_PASSWORD.length();
EEPROM.write(SISSD_ADDR,SISSD_NUM);
set_String(SISSD_NUM,SISSD_ADDR+1,GET_SSID);
EEPROM.write(PASSWORD_ADDR,PASSWORD_NUM);
set_String(PASSWORD_NUM,PASSWORD_ADDR+1,GET_PASSWORD);
server.stop();
break;
}
 
 
   if(EEPROM.read(SISSD_ADDR)!=0)
   {
   GET_SSID = get_String(EEPROM.read(SISSD_ADDR),SISSD_ADDR+1);
   GET_PASSWORD = get_String(EEPROM.read(PASSWORD_ADDR),PASSWORD_ADDR+1);
   Serial.printf("SSID:%srn", GET_SSID.c_str());
   Serial.printf("PSW:%srn",GET_PASSWORD.c_str());
   WiFi.mode(WIFI_STA);
   WiFi.begin(GET_SSID,GET_PASSWORD);
   }

链接:https://pan.baidu.com/s/1CivvdI1TozYQYX_abSeBHA 
提取码:1234

 

  审核编辑:汤梓红
 
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分