ESP32:错误处理

A、不能扫描wifi

W (29) wifi: wifi nvs_open fail ret=4353

E (29) wifi: wifi_init 1418 ret=4353
ESP_ERROR_CHECK failed: esp_err_t 0x1101 at 0x401069cb
0x401069cb: app_main at /srv/esp32_examples/wifi_scanner/main/./main.c:45 (discriminator 1)

file: "/srv/esp32_examples/wifi_scanner/main/./main.c" line 45
func: app_main
expression: esp_wifi_init(&wifi_config)

Backtrace: 0x40087550:0x3ffba4d0 0x400878bd:0x3ffba4f0 0x401069cb:0x3ffba510 0x400d0fc2:0x3ffbaaa0
0x40087550: invoke_abort at /srv/esp/esp-idf/components/esp32/./panic.c:572

0x400878bd: _esp_error_check_failed at /srv/esp/esp-idf/components/esp32/./panic.c:584

0x401069cb: app_main at /srv/esp32_examples/wifi_scanner/main/./main.c:45 (discriminator 1)

0x400d0fc2: main_task at /srv/esp/esp-idf/components/esp32/./cpu_start.c:449

解决方法:

执行make menuconfig,依次进入component config -> Wifi -> Wifi NVS Flash,禁选该选项,编译烧录后即可。

B、panic错误:

E (54) phy_init: esp_phy_load_cal_data_from_nvs: NVS has not been initialized. Call nvs_flash_init before starting WiFi/BT.
W (54) phy_init: failed to load RF calibration data (0x1107), falling back to full calibration
I (234) phy: phy_version: 366.0, ba9923d, Oct 31 2017, 18:06:17, 0, 2
Connecting to wm401... I (3474) event: sta ip: 192.168.0.108, mask: 255.255.255.0, gw: 192.168.0.1
connected!

Guru Meditation Error: Core  0 panic'ed (LoadProhibited)
. Exception was unhandled.
Register dump:
PC      : 0x4008732b  PS      : 0x00060333  A0      : 0x80082b5f  A1      : 0x3ffbfde0  
0x4008732b: is_free at /srv/esp/esp-idf/components/heap/./multi_heap.c:123
 (inlined by) multi_heap_malloc_impl at /srv/esp/esp-idf/components/heap/./multi_heap.c:370

A2      : 0x3ffb8d48  A3      : 0x00000028  A4      : 0x3ffbc2c8  A5      : 0x400eb782  
0x400eb782: ppTask at ??:?

A6      : 0x3f40448c  A7      : 0x00000000  A8      : 0x00000001  A9      : 0x8011019c  
A10     : 0x3ffc553c  A11     : 0x00000000  A12     : 0x3ffc5540  A13     : 0x3ffbad20  
A14     : 0x00000038  A15     : 0x10da203c  SAR     : 0x00000018  EXCCAUSE: 0x0000001c  
EXCVADDR: 0x8011019c  LBEG    : 0x4000c2e0  LEND    : 0x4000c2f6  LCOUNT  : 0xffffffff  

Backtrace: 0x4008732b:0x3ffbfde0 0x40082b5c:0x3ffbfe00 0x40082b8d:0x3ffbfe20 0x400830a9:0x3ffbfe40 0x4000bef5:0x3ffbfe60 0x40084472:0x3ffbfe80 0x400f0600:0x3ffbfea0 0x400efab9:0x3ffbfed0 0x400eb782:0x3ffbff30
0x4008732b: is_free at /srv/esp/esp-idf/components/heap/./multi_heap.c:123
 (inlined by) multi_heap_malloc_impl at /srv/esp/esp-idf/components/heap/./multi_heap.c:370

0x40082b5c: heap_caps_malloc at /srv/esp/esp-idf/components/heap/./heap_caps.c:116

0x40082b8d: heap_caps_malloc_default at /srv/esp/esp-idf/components/heap/./heap_caps.c:145

0x400830a9: _calloc_r at /srv/esp/esp-idf/components/newlib/./syscalls.c:52

0x40084472: wifi_calloc at /srv/esp/esp-idf/components/esp32/./wifi_internal.c:54

0x400f0600: esf_buf_alloc at ??:?

0x400efab9: wdevProcessRxSucDataAll at ??:?

0x400eb782: ppTask at ??:?

解决方法:

增加线程栈的大小。

你可能感兴趣的:(esp8266)