wifi名称可以有空格吗_ESP8266内嵌网页配置WIFI及指令调试

准备
1、智能网络模块(WIFI模块ESP8266-12S/12F)见底图
2、Arduino IDE 最新版 (1.8.13)目的
1、通过固件访问内置网页可以进行重置WIFI密码 (见底图)
2、通过固件内嵌网页可以进行指令测试(通过网页模拟串口发送指令)

void HandleVal(){    handlenum++;    if(handlenum>1)handlenum=-1;    if(handlenum==0||handlenum==2)return;         String wifis = server.arg("ssid"); //wifi名称    String wifip = server.arg("password"); //wifi密码    String testcmd=server.arg("cmd"); //命令测试             wifis.trim();    if(wifis!=""&&handlenum==1)    {            Serial.println("Received webServer Config info:");Serial.println(wifis); Serial.println(wifip);      WiFi.mode(WIFI_STA);      WiFi.begin(wifis,wifip);//连接成功自动保存      if((WiFi.status()== WL_CONNECTED))      {        strcpy(wifi_ssd,wifis.c_str());//名称复制 wifis       WiFi.SSID().c_str()        strcpy(wifi_psw,wifip.c_str());//密码复制 wifip        WiFi.psk().c_str()        rom_save();//保存wifi及模式参数 到EEPROM 断电记忆        //ESP.reset();//重启      }    }         testcmd.trim();//去掉前后空格    if(testcmd!=""&&handlenum==1)    {      Serial.print("Recv Web Commond:");Serial.println(testcmd);      doAction_local(testcmd);//与串口一致的执行函数(本地,网络,串口等统一到此中执行减少代码量)      testcmd="";          }}/***************************************************** * 函数名称:handleNotFound() * 函数说明:响应失败函数 * 参数说明:无******************************************************/void handleNotFound() {    digitalWrite(led_PIN, 0);//指示灯LED_BUILTIN    String message = "File Not Found";    message += "URI: ";    message += server.uri();    message += "Method: ";    message += (server.method() == HTTP_GET) ? "GET" : "POST";    message += "Arguments: ";    message += server.args();    message += "";    for (uint8_t i = 0; i < server.args(); i++) {      message += " " + server.argName(i) + ": " + server.arg(i) + "";    }    server.send(404, "text/plain", message);    led2(500,8);//0.3s-3次循环-余1灭    }/***************************************************** * 函数名称:htmlConfig()  * 函数说明:web配置WiFi函数  (当智能配网失败时调用) * 参数说明:无 * 调用方法 [b]setup[/b]()中进行初始化******************************************************/void htmlConfig(){    WiFi.mode(WIFI_AP_STA);//设置模式为AP+STA双模式    digitalWrite(led_PIN, LOW);    //IPAddress softLocal(192,168,128,1);    //IPAddress softGateway(192,168,128,1);    //IPAddress softSubnet(255,255,255,0);    //WiFi.softAPConfig(softLocal, softGateway, softSubnet);    String apName = ("9I"+(String)ESP.getChipId());  // 2 设置WIFI名称    //const char *softAPName = apName.c_str();    apssid= apName.c_str();    WiFi.softAP(apssid, appassword);      IPAddress myIP = WiFi.softAPIP();    if (MDNS.begin("esp8266")) {//hostString=esp8266      Serial.println("web open url:esp8266.local or 192.168.4.1");    }      server.on("/", handleRoot);                   //回调 html,请求    server.on("/HandleVal", HTTP_GET, HandleVal); //连接    server.onNotFound(handleNotFound);            //请求失败回调函数  (可选)    server.begin();//开启服务器    Serial.println("HTTP server started");}

内嵌网页代码(压缩)

//写入内置网页配网专用(AP热点配网并保存EEPROM)超长字符串写法String htmlstr = String("") +"久爱物联智能配网"+""+"

重置WIFI密码指令测试

WiFi名称: WiFi密码: "+"模块内置指令测试指令:"+"
一路二路"+"三路四路
请输入模块指令"+""+"
手机/电脑连接您的WIFI手机/电脑浏览器输入模块IP地址输入您的WIFI账号密码点击连接连接成功后可以测试内部指令"+"
© JIUAI 2020
";

头文件引用及实例声明
#include
#include
ESP8266WebServer server(80);//端口80

e7abaffb8f4ec6cc2ae3fe7a96bdacef.png

访问内嵌网页(地址是内网地址)自动分配哦

22f2ab37677dbe52fd161bd04d7f4f3a.png

发送1路指令后 一路打开(模拟串口调试)指令文档后续分享

42c16b908fe4fa830e9a9096b6445a7f.png

最新功能更新

e05bd6b2d2b9b73ac8a6c71c9881643b.png

准备的模块

后续代码及固件陆续共享发布,感谢交流指点!不喜勿喷!多多指教!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值