今天在学习MQTT订阅的过程中
发现esp32时钟连接不上wifi
主体代码如下:
while(WiFi.status()!=WL_CONNECTED){delay(200);Serial.println(\"正在连接至wifi...\");WiFi.begin(id,psw);}Serial.println(\"已连接.\");
检查过wifi账号密码,语句逻辑无误之后
最后发现是
delay(200);
这个延时函数的问题,延时太短了
问题原因猜想:
我猜测esp32是多线程运行的(存疑)
在上一个wifi.begin()未执行完时,
程序就进入了下一个循环
然后又调用了wifi.begin()
留给连接wifi的时间太短,导致一直连接不上
解决办法:
延时函数写大
delay(2500);
结果
**
成功解决,特此记录
**