使用WiFiManger配网,连接成功后导致Blinker出现异常-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

12
返回列表 发新帖
楼主: skygz

[已解答] 使用WiFiManger配网,连接成功后导致Blinker出现异常

[复制链接]
发表于 2021-2-9 00:15 | 显示全部楼层
skygz 发表于 2020-6-11 17:07
给个不完全的解决方法吧,这是我免强能接受的用法了,这个用法 依然偶尔会重启,  但起码不是 每次重启了。 ...

可以分享一下配网汉化库吗
发表于 2021-2-9 09:52 | 显示全部楼层
MaK-er 发表于 2021-2-9 00:14
不行,代码量多了就会占用blinker专用eeprom内存,无WiFi直接卡死

那建议使用esp32
 楼主| 发表于 2021-2-10 00:22 | 显示全部楼层
MaK-er 发表于 2021-2-9 00:15
可以分享一下配网汉化库吗

WiFiManager.rar (107.05 KB, 下载次数: 98)
发表于 2021-6-8 13:25 | 显示全部楼层
MaK-er 发表于 2021-2-9 00:14
不行,代码量多了就会占用blinker专用eeprom内存,无WiFi直接卡死

我的好像也是这个问题,第一次配置完重启后就卡死连不上WIFI,不知道咋解决
发表于 2021-6-10 13:27 | 显示全部楼层
我结合使用没问题,代码如下,你看看:
  1. #define BLINKER_WIFI
  2. #include <Blinker.h>
  3. #include <WiFiManager.h>

  4. //引脚定义
  5. #define RELAY 0    //继电器按钮
  6. #define RECONFIG 2    //重置网络实体按钮(LED),GPIO2引脚接地500ms即可复位

  7. //点灯平台信息
  8. char auth[] = "授权码";

  9. // 新建组件对象
  10. BlinkerButton Button_Relay("btn-relay");

  11. //使用web配置网络
  12. WiFiManager wifiManager;
  13. char devname[] = "ESP8266-01S-1";   //定义WIFI名称和主机名
  14. void WebConfig() {
  15.   Serial.println("Entered config mode...");
  16.   // 自动连接WiFi,参数是连接ESP8266时的WiFi名称
  17.   //wifiManager.setConnectTimeout(30);  //设置连接超时时间30s
  18.   wifiManager.autoConnect(devname);
  19.   WiFi.hostname(devname);  //设置主机名
  20.   // WiFi连接成功后将通过串口监视器输出连接成功信息
  21.   Serial.println("");
  22.   Serial.println("======== WifiManager Network Info ========");
  23.   Serial.print("### ESP8266 Connected to: ");
  24.   Serial.println("### SSID: " + (String)WiFi.SSID());              // WiFi名称
  25.   Serial.println("### PSWD: " + (String)WiFi.psk());              // WiFi名称
  26.   Serial.print("### IP address: ");
  27.   Serial.println(WiFi.localIP());           // IP
  28.   Serial.println("### HostName: " + WiFi.hostname());           // 主机名
  29.   Serial.println("==========================================");
  30.   Serial.println("");
  31. }

  32. //重置网络信息按钮事件
  33. void Button_RstConfig_callback(){
  34.   if (digitalRead(RECONFIG) == LOW) {
  35.     delay(500);
  36.     if (digitalRead(RECONFIG) == LOW) {
  37.       Serial.println("Reset Config...");
  38.       wifiManager.resetSettings();    //擦除WIFI信息
  39.       //wifiManager.reboot();   //重启设备
  40.       Blinker.reset();    //重置设备
  41.     }
  42.   }
  43. }

  44. // 继电器按钮事件
  45. void Button_Relay_callback(const String & state){
  46.   BLINKER_LOG("Relay State: ", state);
  47.   //digitalWrite(RELAY, !digitalRead(RELAY));
  48.   if (digitalRead(RELAY) == HIGH) {
  49.     digitalWrite(RELAY, LOW);
  50.     Button_Relay.icon("fad fa-siren-on");
  51.     Button_Relay.print("on");
  52.   } else if (digitalRead(RELAY) == LOW) {
  53.     digitalWrite(RELAY, HIGH);
  54.     Button_Relay.icon("fad fa-siren");
  55.     Button_Relay.print("off");
  56.   }
  57. }

  58. // 如果未绑定的组件被触发,则会执行其中内容
  59. void dataRead(const String & data){
  60.   BLINKER_LOG("Blinker readString: ", data);
  61. }

  62. void setup(){
  63.   // 初始化串口
  64.   Serial.begin(115200);
  65.   BLINKER_DEBUG.stream(Serial);
  66.   BLINKER_DEBUG.debugAll();

  67.   //串口打印说明信息
  68.   Serial.println("### Notice: Set GPIO2 to LOW and reset after 500ms.");

  69.   // 初始化IO
  70.   pinMode(RELAY, OUTPUT);
  71.   pinMode(RECONFIG, OUTPUT);
  72.   digitalWrite(RELAY, HIGH);
  73.   digitalWrite(RECONFIG, HIGH);
  74.   WebConfig();  //配置网络  
  75.   Blinker.begin(auth, WiFi.SSID().c_str(), WiFi.psk().c_str()); //初始化blinker
  76.   //Blinker.begin(auth);
  77.   Blinker.attachData(dataRead);
  78.   Button_Relay.attach(Button_Relay_callback);
  79. }

  80. void loop() {
  81.   Blinker.run();
  82.   Button_RstConfig_callback();    //循环监听复位按钮是否按下
  83. }
复制代码

发表于 2021-6-13 00:39 | 显示全部楼层
发表于 2021-7-7 02:51 | 显示全部楼层
WiFi.SSID()和WiFi.psk()就读出账号和密码了
发表于 2021-7-7 03:24 | 显示全部楼层
我已经测试了,Blinker.begin(auth, WiFi.SSID().c_str(), WiFi.psk().c_str());这样就行了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 12:35 , Processed in 0.080767 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表