前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >全志XR806芯片 如何获取ap的rssi值?

全志XR806芯片 如何获取ap的rssi值?

作者头像
阿志小管家
发布2024-02-02 16:09:09
1200
发布2024-02-02 16:09:09
举报
文章被收录于专栏:全志嵌入式那些事

1.问题背景 在网络设备上,很多开发者要把当前的网络质量反馈到用户上,以便用户了解当前网络环境,当网速慢或联网失败时做出及时的网络环境调整。

2.问题描述 如何获取目标ap的信号强度。

3.解决办法 (1)当连接到ap时获取当前ap的信号强度值,通过以下方式来获取rssi和dbm的值:

代码语言:javascript
复制
ret = wlan_ext_request(g_wlan_netif, WLAN_EXT_CMD_GET_SIGNAL, (int)(&signal));
	printf("signal = %d! noise = %d!\r\n", (signal.noise + (signal.rssi/2)), signal.noise);

(2)获取附近ap的rssi值和dbm值,可以通过扫描结果来获取,其中获取ap信息结构体wlan_sta_ap里面的rssi成员代表rssi值,level代表dbm值。

代码语言:javascript
复制
wlan_ssid_t    ssid;
		uint8_t        bssid[6];
		uint8_t        channel;
		uint16_t       beacon_int;
		int            freq;
		int            rssi;     /* unit is 0.5db */
		int            level;    /* signal level, unit is dbm */
		int            wpa_flags;
		int            wpa_cipher;
		int            wpa_key_mgmt;
		int            wpa2_cipher;
		int            wpa2_key_mgmt;
	} wlan_sta_ap_t;

注意:获取的信号强度信息时需要进行一次扫描动作才能刷新缓存结果,所以获取信息之前需要调用wlan_ap_scan_once()函数扫描,并且等待扫描成功后,信号强度信息才会刷新。

原贴链接:https://bbs.aw-ol.com/topic/745

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-02-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档