Hi3861V100建立Wi

Hi3861V100建立Wi,Hi3861V100、Hi3861LV100 通过API(Application Programming Interface)面向开发者提供Wi-Fi功效的开发和应用接口,包罗芯片初始化、资源设置、Station确立和设置、扫描、关联以及去关联、状态查询等一系列功效, 框架结构如图1-1所示。

Hi3861V100建立Wi

各功效模块说明如下:

APP应用开发层:用户基于API接口的二次开发。

Example示例:SDK提供的功效开发示例。

API接口:提供基于SDK的通用接口。

LWIP协议栈:网络协议栈。

WPA SUPPLICANT(含HOSTAPD):Wi-Fi治理模块。

Wi-Fi驱动:802.11协议实现模块。

Platform平台:提供SoC系统板级支持包(包罗:芯片和外围装备驱动、操作系统以及系统治理)

Hi3861V100建立Wi

1、Wi-Fi驱动加载与卸载

1.1 概述

在完成芯片上电后,驱动加载实现对芯片寄存器的初始设置、校准参数读取与写入、软件资源的申请和设置;驱动卸载实现软件资源的释放。

1.2 开发流程

使用场景:Wi-Fi驱动初始化为Wi-Fi功效提供基本资源设置和芯片初始化,是Wi-Fi功效实现的第一步。当需要设置Wi-Fi功效时,必须先完成驱动的初始化,Wi-Fi功效使用完成后,可以使用去初始化完成资源释放也可以使用软复位来完成资源释放。

功效:Wi-Fi驱动加载与卸载提供的接口如表2-1所示

Hi3861V100建立Wi

使用驱动加载与卸载的典型流程:

步骤1:挪用hi_wifi_init, 完成Wi-Fi驱动初始化。

步骤2:参考 3 STA功效 或 4 SoftAp功效 设置Wi-Fi功效。

步骤3:挪用hi_wifi_deinit,完成Wi-Fi驱动去初始化。

—-

竣事

返回值如表2-2所示

Hi3861V100建立Wi

1.3 注意事项

驱动资源设置不支持运行中修改,须先卸载驱动再举行修改,修改后重新初始化。

驱动为了保证Wi-Fi营业的连续性,会在启动时凭据VAP数目和用户数目预申请内存,其中1个VAP资源预申请约5K内存,1个用户资源预申请约7K内存,请凭据场景需要合理设置初始化的资源数。现在仅配网时需要用到SoftAp和STA共存,一样平常建议设置为2个VAP和2个用户;若是可以实现配网时先关闭SoftAp再启动STA去关联,VAP和用户数目均可设置为1。

1.4 编程实例

示例1:基于LiteOS的app_main函数,在系统初始化时自动完成Wi-Fi驱动的加载,此加载方式无须举行卸载开发,系统reboot时自动完成驱动卸载和加载。

Hi3861V100建立Wi

Hi3861V100建立Wi

示例2:基于shell下令,在系统启动后,通过手动下发shell下令完成Wi-Fi驱动的加载和卸载。

Hi3861V100建立Wi

Hi3861V100建立Wi

Hi3861V100建立Wi

2、STA功效

2.1 概述

STA功效即NON-AP Station功效,实现驱动STA VAP的确立、扫描、关联以及DHCP,完成通讯链路的确立。开发STA功效前,须完成驱动加载。

2.2 开发流程

使用场景:当需要接入某个网络并与该网络通讯时,需要启动STA功效。

功效:驱动STA功效提供的接口,如表3-1所示。

Hi3861V100建立Wi

Hi3861V100建立Wi

STA功效开发的典型流程:

步骤1:挪用hi_wifi_sta_start, 启动STA。

步骤2:挪用hi_wifi_set_bandwidth, 设置STA带宽模式,20M带宽可不用设置。

步骤3:(可选,凭据需要设置)挪用hi_wifi_sta_set_reconnect_policy, 设置自动重连。

步骤4:挪用hi_wifi_sta_scan(或挪用hi_wifi_sta_advance_scan;执行带参数扫描),触发STA扫描。

步骤5:挪用hi_wifi_sta_scan_results,获取扫描效果。

步骤6:凭据接入网络需求,自定义筛选扫描效果,挪用hi_wifi_sta_connect, 举行毗邻。

步骤7:挪用hi_wifi_sta_get_connect_info,查询Wi-Fi毗邻状态。

步骤8:毗邻乐成后,挪用netifapi_dhcp_start,启动DHCP客户端,获取IP地址。

步骤9:挪用hi_wifi_sta_disconncet,脱离当前毗邻的网络。

51影评网 步骤10:挪用netifapi_dhcps_stop,住手DHCP客户端。

步骤11:挪用hi_wifi_sta_stop,关闭STA。

—竣事

返回值如表3-2所示

Hi3861V100建立Wi

2.3 注意事项

STA支持5M/1 OM窄带模式,需要时可挪用接口设置,不挪用则默认启动20M带宽STA。

扫描为非壅闭式接口,扫描下令下发乐成后需要延迟一段时间后再获取扫描效果,全信道扫描延迟时间建议设置为1s。

可通过指定SSID、BSSID、信道等带指定参数的扫描,实现更精准地扫描,缩短扫描时间。

已知待毗邻网络的参数时,可省去扫描历程,直接提议毗邻。

毗邻为非壅闭式接口,毗邻下令下发乐成后,需要通过下令获取毗邻状态。

注册事宜回调函数后,Wi-Fi相关的事宜会通过该回调上报用户,用户可凭据事宜执行后续动作。

不支持重复启动STA,再次启动STA时须先执行关闭STA。

关闭STA步骤为可选,装备所处的网络职位稳定,不需要执行关闭STA。

2.4 编程实例

示例:实现STA功效启动、扫描、关联以及获取IP地址。

Hi3861V100建立Wi

Hi3861V100建立Wi

Hi3861V100建立Wi

Hi3861V100建立Wi

Hi3861V100建立Wi

3、SoftAp功效

3.1 概述

SoftAp功效提供网络接入点供其他STA接入,并对接入的STA提供DHCP Server服务。

3.2 开发流程

使用场景:当需要确立一个网络接入点,供其他装备接入并共享网络内的数据时,需要使用SoftAP功效。

功效:提供的接口如表4-1所示。

Hi3861V100建立Wi

Hi3861V100建立Wi

SoftAP功效开发的典型流程:

步骤1:设置SoftAp的网络参数:

-挪用hi_wifi_softap_set_protocol_mode,设置协议模式。

-挪用hi_wifi_softap_set_beacon_period,设置beacon周期。

-挪用hi_wifi_softap_ set_dtim_period,设置dtim周期。

步骤2:挪用hi_wifi_softap_start,启动SoftAp。

步骤3:挪用hi_wifi_set_bandwidth,设置SoftAp的带宽,20M带宽可不用设置。

步骤4:挪用netifapi_netif_set_addr,设置DHCP服务器。

步骤5:挪用netifapi_dhcps_start,启动DHCP服务器。

步骤6:挪用netifapi_dhcps_stop,住手DHCP服务器。

步骤7:挪用hi_wifi_softap_stop,关闭SoftAp。

–竣事

返回值如表4-2所示

Hi3861V100建立Wi

3.3 注意事项

SoftAp的网络参数为可选设置,无特殊要求均可使用初始默认值。

SoftAp支持5M/1 0M窄带模式,需要时可挪用接口设置,不挪用则默认启动20M带宽SoftAp。

SoftAp的网络参数在关闭SoftAp时不会重置,会继续沿用_上一次设置,重启单板可恢复至初始默认值。

SoftAp模式下最大关联用户数限制:

-小于初始化时设置的用户数目。

-最大关联用户不跨越2个。

3.4 编程实例

示例:实现将SoftAp功效的beacon周期设置为200ms,并启动SoftAp,最后将DHCP服务器的IP地址设置为192.168.43.1。

Hi3861V100建立Wi

Hi3861V100建立Wi

除此之外,Wi-Fi软件应用确立还包罗了混杂模式、CSI数据采集、STA&SoftAP共存、Wi-Fi&蓝牙共存、软件重传等诸多无线网实用功效开发。想详细领会学习的童鞋,可以扫码加入我们的鸿蒙技术交流群,免费领取领取完整的基于HarmonyOS Hi3861V100开发板Wi-Fi模组应用开发文档。另外还给人人准备了超级详细的Hi3861V100硬件&软件开发文档资料,也一并免费送给人人学习。

责任编辑人:CC

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 yaoruanwen@qq.com 举报,一经查实,本站将立刻删除。