本文为连志安老师鸿蒙系统系列入门教程之《Hi3861 WiFi 操作,热点连接》。

图片来自包图网

👆扫码立即报名👆

但是很多时候,我们需要实现开机后自动连接到某个热点,光靠 AT 指令不行。
Hi3861 为我们提供了 WiFi 操作的相关 API,方便我们编写代码,实现热点连接。
代码实现
先直接上代码和操作演示。
跟我们最早的 hello world 代码一样,在 app 下新增业务 wifi_demo,其中 hello_world.c 为业务代码,BUILD.gn 为编译脚本。
.└── applications └── sample └── wifi-iot └── app │── wifi_demo │ │── wifi_demo.c │ └── BUILD.gn └── BUILD.gn
Wifi_demo.c 代码如下:
见附件doc\05 WiFi操作\sta_demo\sta_demo.c
static_library("wifi_demo") { sources = [ "wifi_demo.c" ] include_dirs = [ "//utils/native/lite/include", "//kernel/liteos_m/components/cmsis/2.0", "//base/iot_hardware/interfaces/kits/wifiiot_lite", "//vendor/hisi/hi3861/hi3861/third_party/lwip_sack/include", "//foundation/communication/interfaces/kits/wifi_lite/wifiservice", ]}
import("//build/lite/config/component/lite_component.gni")lite_component("app") { features = [ "wifi_demo:wifi_demo", ]}

可以看到有打印扫描到的热点名称:
SSID: 15919500
SSID: Netcore_FD55A7
同时最后打印:WiFi:Connected 成功连接上热点。
WiFi API 接口说明
Hi3861 提供了非常多的 WiFi 相关 API,主要文件是 hi_wifi_api.h,我们这里只列举最重要的几个 API:
开启 STA
int hi_wifi_sta_start(char *ifname, int *len);
停止 STA
int hi_wifi_sta_stop(void);
扫描附件的热点
int hi_wifi_sta_scan(void);
连接热点
int hi_wifi_sta_connect(hi_wifi_assoc_request *req);

这里需要注意的是,通常加密方式是:HI_WIFI_SECURITY_WPA2PSK。


👆扫码立即报名👆
国庆期间连志安老师将自己学习到鸿蒙系统相关的知识整理成文档,这里分享给大家。主要是 hi3861 芯片。后续还会持续更新~~目前手册的内容主要如下:


点“阅读原文”,即可免费下载
文章转载自51CTO技术栈,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




