繁体   English   中英

ESP32 作为 WiFi 接入点在连接时崩溃

[英]ESP32 as WiFi access point crashes on connection

我正在通过 ArduinoIDE 对 ESP32 进行编程,但偶然发现了一个奇怪的问题。 它作为 WiFi 接入点运行,代码非常简单明了:

IPAddress apIP(192,168,1,1);

WiFi.mode(WIFI_AP);
WiFi.softAP("MyESP32");
WiFi.softAPConfig(apIP,apIP,IPAddress(255,255,255,0));

现在,当客户端连接到此 AP 时,它通常会打印出以下错误消息:

dhcps: send_nak>>udp_sendto result 0
dhcps: send_offer>>udp_sendto result 0

...有时会发生崩溃:

Guru Meditation Error: Core  0 panic'ed (InstrFetchProhibited). Exception was unhandled.
Core 0 register dump:
PC      : 0x00000000  PS      : 0x00060e30  A0      : 0x8011cc29  A1      : 0x3ffb3e00  
A2      : 0x3ffcdbd0  A3      : 0x3ffcde04  A4      : 0x3ffcd844  A5      : 0x3ffcd824  
A6      : 0x0201a8c0  A7      : 0x0c01a8c0  A8      : 0x8011cacc  A9      : 0x3ffb3dc0  
A10     : 0x3ffcdbe0  A11     : 0x3ffcde04  A12     : 0x3ffb3e0c  A13     : 0x00000044  
A14     : 0x00000001  A15     : 0x00000006  SAR     : 0x00000010  EXCCAUSE: 0x00000014  
EXCVADDR: 0x00000000  LBEG    : 0x4000c349  LEND    : 0x4000c36b  LCOUNT  : 0x00000000  

Backtrace: 0x00000000:0x3ffb3e00 0x4011cc26:0x3ffb3e40 0x40129959:0x3ffb3e60 0x4012e961:0x3ffb3ea0 0x40133bfe:0x3ffb3ec0 0x4011d54b:0x3ffb3ee0 0x40089001:0x3ffb3f10

明确地说:这发生在客户端连接期间,在涉及我自己的 ESP32 代码的地方没有做任何其他事情。

知道这可能是什么原因以及如何解决吗?

客户端连接时的核心恐慌可以通过在 'WiFi.softAP' 之后和 'WiFi.softAPConfig' 之前添加 2 秒延迟来解决,如下所示:

IPAddress apIP(192,168,1,1);

WiFi.mode(WIFI_AP);
WiFi.softAP("MyESP32");
delay(2000);
WiFi.softAPConfig(apIP,apIP,IPAddress(255,255,255,0));

更多信息可以在这里找到: WiFi.softAPIP() 导致 Core 0 panic'ed (InstrFetchProhibited)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM