ESP32使用ESP-IDF,以太網聯網和WIFI網絡切換注意事項

記錄一個使用問題,以便有需要的道友查閱

需要實現的功能:

在上電一次對有線無線進行檢測,聯網的優先級爲有線->無線。

問題:

在程序編寫的初步,寫了兩個網絡回調函數並進行初始化操作,在有線不通的情況下,再去運行無線的初始化,esp32直接重啓,經過查找發現esp_event_loop_init()此函數只是支持監測一個循環事件,無法對兩個及以上的時間進行檢測。

解決辦法:

沒辦法,只能嘗試在建立一個循環監測事件,只能通過source insight對源碼進行閱讀,並嘗試新建一個循環事件的途中。無意間發現處理網絡事件結構體(system_event_id_t),突然萌生一個念頭,把有線和無線的處理事件寫成一個時間試試。經過一陣時間的騷操作,實現對應的功能。

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章