ESP32使用ESP-IDF,以太网联网和WIFI网络切换注意事项

记录一个使用问题,以便有需要的道友查阅

需要实现的功能:

在上电一次对有线无线进行检测,联网的优先级为有线->无线。

问题:

在程序编写的初步,写了两个网络回调函数并进行初始化操作,在有线不通的情况下,再去运行无线的初始化,esp32直接重启,经过查找发现esp_event_loop_init()此函数只是支持监测一个循环事件,无法对两个及以上的时间进行检测。

解决办法:

没办法,只能尝试在建立一个循环监测事件,只能通过source insight对源码进行阅读,并尝试新建一个循环事件的途中。无意间发现处理网络事件结构体(system_event_id_t),突然萌生一个念头,把有线和无线的处理事件写成一个循环事件试试。经过一阵时间的骚操作,完美实现对应的功能。

物理层的芯片使用lan8720A
ESP-IDF的版本目前长期支持的版本是3.3.2,我使用的也是此版本,其他版本不能保证完全支持

你可能感兴趣的:(ESP32)