杰理之AC79 Wi-Fi 事件描述【篇】

nclude_lib/net/wifi/wifi_connect.h 描述了所有的 WIFI_EVENT ,每个事件会统一发送到用户注册的回调函数 wifi_set_event_callback ,下面具体说明每个事件的具体意义以及用户代码需要作出的响应

WIFI_EVENT_MODULE_INIT

Wi-Fi驱动初始化前配置,接收到此事件后用户需要配置Wi-Fi工作模式,例如STA模式连接的SSID和密码, AP模式SSID,IP网关地址等

WIFI_EVENT_MODULE_START

Wi-Fi驱动启动成功后的事件,通常不需做任何响应

WIFI_EVENT_MODULE_STOP

Wi-Fi驱动关闭成功后的事件,通常不需做任何响应

WIFI_EVENT_STA_START

Wi-Fi驱动STA模式启动成功后的事件,通常不需做任何响应

WIFI_EVENT_STA_STOP

Wi-Fi驱动STA模式停止后的事件,通常不需做任何响应

WIFI_EVENT_STA_SCAN_COMPLETED

扫描完成事件,通常由STA模式连接过程中扫描空中所有信道完成或者用户调用wifi_sta_scan_once请求扫描触发的事件,接收到此事件后,应用程序的事件回调函数可以调用wifi_get_scan_result获取扫描结果

WIFI_EVENT_STA_CONNECT_SUCC

STA 已成功连接目标 AP的事件,接收到此事件后,Wi-Fi 驱动程序根据应用程序响应返回结果决定是否启动 DHCP 客户端服务并开始获取 IP 地址,还是说使用静态IP地址

WIFI_EVENT_STA_CONNECT_TIMEOUT_NOT_FOUND_SSID

连接目标 AP超时事件,原因是超时时间内扫描不到指定SSID,超时时间应用程序可以通过wifi_set_sta_connect_timeout接口配置

WIFI_EVENT_STA_CONNECT_TIMEOUT_ASSOCIAT_FAIL

连接目标 AP超时失败事件,原因是超时时间内关联失败,通常原因是密码错误,或者距离太远/干扰太多导致通信失败

WIFI_EVENT_STA_DISCONNECT

STA模式下与AP断开事件,此事件将在以下情况下产生:

Wi-Fi station 已成功连接至 AP的情况下调用了wifi_enter_ap_mode,wifi_enter_sta_mode,wifi_enter_smp_cfg_mode,wifi_off函数触发

Wi-Fi 连接因为某些原因而中断,例如:由于信号太差,station 连续多次丢失 太多 beacon帧、AP 脱离 station 连接、AP 验证模式改变等

接收到此事件后,通常需要通知针对基于套接字编写的客户端应用程序关闭套接字.如果此事件不是用户期待的,可以调用wifi_enter_sta_mode进行重新连接

WIFI_EVENT_STA_NETWORK_STACK_DHCP_SUCC

当 DHCP 客户端成功从 DHCP 服务器获取 IP 地址,将引发此事件, 意味着应用程序可以获取到设备IP地址,并且可以创建套接字连接服务器

WIFI_EVENT_STA_NETWORK_STACK_DHCP_TIMEOUT

当 Wi-Fi station 已成功连接至 AP, 但是DHCP 客户端在指定超时时间内未能够从 DHCP 服务器获取 IP地址,将引发此事件, 通常情况下是由于距离远信号不好,空间干扰大导致的,应用程序可以调用lwip_set_dhcp_timeout设定超时时间,默认不指定为15秒. 引发事件后lwip协议栈内部会不断重试获取 IP地址

WIFI_EVENT_AP_START

Wi-Fi驱动AP模式启动成功后的事件,通常不需做任何响应

WIFI_EVENT_AP_STOP

Wi-Fi驱动AP模式停止后的事件,通常不需做任何响应

WIFI_EVENT_AP_ON_ASSOC

在AP模式下,每当有一个 station 成功连接时,将引发此事件,接收到此事件后,应用程序的回调函数可以直接获取已连接 STA 的MAC地址,和通过wifi_get_sta_entry_rssi获取已连接 STA 的RSSI等。

WIFI_EVENT_AP_ON_DISCONNECTED

AP模式下与 station离开事件,此事件将在以下情况下产生:

Wi-Fi station 已成功连接至 AC79 AP的情况下调用了wifi_enter_ap_mode,wifi_enter_sta_mode,wifi_enter_smp_cfg_mode,wifi_off函数,或者调用wifi_disconnect_station仅断开指定mac地址的station端

Wi-Fi 连接因为某些原因而中断,例如:由于信号太差,AP太长时间没有接收到station的数据包

station 主动断开与 AP79 AP 之间的连接

发生此事件时,应用程序的事件回调函数通常需执行一些操作,例如通过dhcps_get_ipaddr获取到离开的station 并且关闭与此 station 相关的套接字等

WIFI_EVENT_SMP_CFG_START

Wi-Fi驱动混杂模式启动成功后的事件,通常不需做任何响应,此事件也是意味着,AirKiss配网功能的启动

WIFI_EVENT_SMP_CFG_STOP

Wi-Fi驱动混杂模式停止后的事件,通常不需做任何响应

WIFI_EVENT_SMP_CFG_TIMEOUT

Wi-Fi驱动混杂模式模式下在指定超时时间内获取不到配网信息的事件,应用程序可以通过wifi_set_smp_cfg_timeout配置超时时间,默认为无限超时时间

WIFI_EVENT_SMP_CFG_COMPLETED

Wi-Fi驱动混杂模式下AirKiss配网功能获取到结果引发的事件,通常用户在配网情况下触发此事件,应用程序可以在此事件后获取配网结果信息

WIFI_FORCE_MODE_TIMEOUT

若应用程序在WIFI_EVENT_MODULE_INIT事件下配置wifi_set_default_mode的force参数为3-200以内,并且默认配置STA模式下启动,那么在force参数代表的超时时间内未连接上AP,将引发此事件.通常用于给用户配置一个默认连接的SSID,方便客户调试使用, 发生此事件时,一般需要切换到配网模式或者连接其他AP

WIFI_EVENT_P2P_XXX

Wi-Fi驱动P2P模式暂时不做说明

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

滴水穿石-2025

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值