0.前言
本文介绍ESP32C3 WiFi 连接过程,ESP32C3连接WiFi可分为三个步骤。
-
初始化WiFi(包括初始化LwIP、初始化WiFi驱动程序、初始化系统事件等)
-
配置WiFi(设置WiFi账号密码,设置WiFi的安全方面的设置等)
-
启动WiFi
1.初始化WiFi
-
使用
esp_netif_init()创建一个LwIP核心任务,并初始化LwIP相关工作。 -
使用
esp_event_loop_create_default()创建一个系统事件任务,并初始化应用程序事件的回调函数。 -
使用
esp_netif_create_default_wifi_sta()创建有 TCP/IP 堆栈的默认网络接口实例绑定 station -
使用
esp_wifi_init()初始化WiFi驱动
以上的初始化为固定的初始化为固定的流程,是否理解都不影响正常的业务开发(下面的是初始化的重点)
-
使用
esp_event_handler_instance_register()事件回调函数。esp_event_handler_instance_register()函数有5个参数参数 作用 event_base 类型为 esp_event_base_t,设置触发回调函数事件的事件类型event_id 类型为 int32_t说明event_base类型下具体的事件类型event_handler 类型为 esp_event_handler_t设置回调函数event_handler_arg 类型为 void *向回调函数传递的额外数据,如果不需要传递额外的数据设置为NULLinstance 类型为 esp_event_handler_instance_t *标识已注册事件处理程序实例的上下文在乐鑫SDK的station示例中(位于
wifi\getting_started\station)使用esp_event_handler_instance_register()函数注册了两个回调函数static void event_handler(void* arg,esp_event_base_t event_base,int32_t event_id, void* event_data) { /*此处略,下文有该回调函数的详细分析*/ } esp_event_handler_instance_t instance_any_id; //注册第一个回调函数 esp_event_handler_instance_register(WIFI_EVENT,

最低0.47元/天 解锁文章
2072

被折叠的 条评论
为什么被折叠?



