Hi3516 AI Camera開發(fā)板是帶有Wifi模塊的,可以工作在AP和STA模式。我們通過系統(tǒng)自帶的setting APP就可以實(shí)現(xiàn)連接Wifi熱點(diǎn)的功能。但我在開發(fā)過程中發(fā)現(xiàn),在setting中連接Wifi熱點(diǎn)然后退出setting,Wifi就斷開了!通過串口日志看到,在退出setting時(shí)輸出有這樣一行字:
[plat_pm]wifineedalwayson,donotclose!!
那基本上這個(gè)setting里的wifi連接功能就沒法用了,那還有沒有辦法持久連接wifi呢?
答案是有的:方法1,使用自帶的wpa_supplicant;方法2,在app中調(diào)用wifi接口。
一、編譯
Wifi相關(guān)示例代碼在//applications/sample/camera/communication目錄下,有如下三個(gè)目錄:
hostapd提供AP模式示例
wpa_cli提供監(jiān)聽事件和控制wpa的示例
wpa_supplicant提供STA模式示例
觀察一下這三個(gè)目錄,除了有.c源碼文件外,還有幾個(gè).conf文件,是AP和STA模式的配置文件
..../communication/hostapd/config/hostapd.conf,AP模式的配置文件,我們關(guān)心的主要是ssid:
interface=wlan0
driver=hdfwifi
ctrl_interface=udp
ssid=testap
hw_mode=g
channel=1
ignore_broadcast_ssid=0
如果要給AP設(shè)置密碼,需要增加幾行配置:
auth_algs=1
wpa=2
wpa_passphrase=12345678
rsn_pairwise=CCMP
..../communication/wpa_supplicant/config/wpa_supplicant.conf,STA模式的配置文件:
country=GB
ctrl_interface=udp
network={
ssid="yourssid"
psk="yourpwd"
}
其中network節(jié)初始是空的,自己添加ssid和psk,即熱點(diǎn)的ssid和密碼。這些conf文件在編譯燒錄后會(huì)存放在/etc目錄下
默認(rèn)情況下,這些是不參與編譯的。我們需要修改//applications/sample/camera/communication/BUILD.gn文件,添加相關(guān)feature:
lite_component("sample"){
features=[
"wpa_supplicant:wpa_sample",
"hostapd:hostapd_sample",
"wpa_cli:wpa_cli_sample"
]
}
然后編譯代碼:
pythonbuild.pyipcamera_hi3516dv300-bdebug
二、測試
燒錄到Hi3516開發(fā)板,不再贅述。
啟動(dòng)后用串口連接,查看bin目錄下的文件:
OHOS#ls/bin
Directory/bin:
-rwxrwxrwx13488u:0g:0wpa_supplicant
-rwxrwxrwx50484u:0g:0bundle_daemon
-rwxrwxrwx13488u:0g:0hostapd
-rwxrwxrwx13440u:0g:0foundation
-rwxrwxrwx25924u:0g:0wms_server
-rwxrwxrwx21724u:0g:0appspawn
-rwxrwxrwx13540u:0g:0query.bin
-rwxrwxrwx13540u:0g:0abilityMain
-rwxrwxrwx13488u:0g:0apphilogcat
-rwxrwxrwx13504u:0g:0led_app
-rwxrwxrwx13540u:0g:0media_server
-rwxrwxrwx25828u:0g:0init
-rwxrwxrwx13792u:0g:0hilogcat
-rwxrwxrwx13488u:0g:0camera_app
-rwxrwxrwx25824u:0g:0shell
-rwxrwxrwx13488u:0g:0wpa_cli
可以看到比之前多了幾個(gè)文件:wpa_supplicant,hostapd,wpa_cli
再查看etc目錄,
OHOS#ls/etc
Directory/etc:
-rwxrwxrwx61u:0g:0os-release
-rwxrwxrwx107u:0g:0hostapd.conf
-rwxrwxrwx3473u:0g:0init.cfg
-rwxrwxrwx82u:0g:0wpa_supplicant.conf
可以看到比之前多了幾個(gè)文件,hostapd.conf,wpa_supplicant.conf
這里簡要介紹wpa_supplicant的使用方法,詳細(xì)命令格式請(qǐng)參考命令自帶的help
這里以連接熱點(diǎn)為例,命令格式:
cd/bin
./wpa_supplicant-iwlan0-c/etc/wpa_supplicant.conf
-i參數(shù)指定網(wǎng)卡名稱
-c參數(shù)指定配置文件
/etc/wpa_supplicant.conf文件中保存有我們要連接的熱點(diǎn)的ssid和密碼。
用手機(jī)做熱點(diǎn)進(jìn)行測試,看到連接設(shè)備從0變?yōu)?,說明Wifi連接成功了。
編輯:hfy
-
WIFI
+關(guān)注
關(guān)注
81文章
5352瀏覽量
206814 -
Hi3516
+關(guān)注
關(guān)注
1文章
21瀏覽量
16035 -
鴻蒙系統(tǒng)
+關(guān)注
關(guān)注
183文章
2638瀏覽量
67444
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
鴻蒙OpenHarmony南向:【Hi3516標(biāo)準(zhǔn)系統(tǒng)入門(命令行方式)】

【信盈達(dá)】鴻蒙操作系統(tǒng)移植--2、搭建Hi3518/Hi3516開發(fā)環(huán)境
Hi3516開發(fā)板介紹
【燒錄指引】Hi3861、Hi3516、Hi3518 新手指引
Hi3861、Hi3516、Hi3518 新手指引
鴻蒙HI3516-HAP的編譯打包和安裝
Hi3516開發(fā)板介紹
Hi3516聯(lián)網(wǎng)
OpenHarmony2.0 Hi3516系列資料下載合集(源碼編譯+燒錄)
【鴻蒙系統(tǒng)學(xué)習(xí)筆記】Hi3516開發(fā)板燒錄總結(jié)
海思HI3516高清IPCAM設(shè)計(jì)原理圖免費(fèi)下載

Hi3516A和Hi3516D硬件設(shè)計(jì)用戶指南資料免費(fèi)下載

評(píng)論