開(kāi)發(fā)環(huán)境:
RT-Thread Studio
開(kāi)發(fā)板:
Art-Pi
OS版本:
4.0.3
筆記內(nèi)容
參考官方例程的配置,軟件包依賴(lài)于fal和easyflash
硬件勾選AP6212
保存配置退出,編譯通過(guò),下載即可,打開(kāi)終端查看調(diào)試信息
通過(guò)終端調(diào)試WIFI
網(wǎng)卡設(shè)備已經(jīng)注冊(cè)成功。這時(shí)候就可以通過(guò)wifi提供的調(diào)試工具來(lái)試試網(wǎng)絡(luò)是否已經(jīng)聯(lián)通。首先是查詢(xún)當(dāng)前可用熱點(diǎn)信息wifi scan
然后是連接熱點(diǎn)wifi join 熱點(diǎn)名稱(chēng) 密碼
然后可以試試ping一下百度
還可以看看當(dāng)前wifi狀態(tài)wifi status
遇到不清楚的可以wifi help查詢(xún)一下指令
到此,意味著AP6212已經(jīng)成功驅(qū)動(dòng)起來(lái)了。但是這樣只是第一步,因?yàn)榘蹇ㄖ貑⒅笫遣粫?huì)自動(dòng)重新連接的。
要實(shí)現(xiàn)保存配置信息,并且開(kāi)機(jī)自動(dòng)連接,需要參考官方例程art_pi_wifi
學(xué)習(xí)art_pi_wifi例程
通過(guò)rtt-studio新建一個(gè)art_pi_wifi的項(xiàng)目,然后編譯下載到板卡上,先運(yùn)行一下效果。
燒錄固件之后第一次啟動(dòng),wifi沒(méi)有連接,因?yàn)榇藭r(shí)并沒(méi)有保存熱點(diǎn)配置信息,不過(guò)“Auto Connect status”的狀態(tài)是“Enable”。
通過(guò)wifi join指令連接熱點(diǎn),ping通baidu之后,使用reboot指令重啟板卡。
板卡第二次啟動(dòng)之后,在wifi注冊(cè)完畢之后,自動(dòng)連接上了之前配置好的熱點(diǎn),不需要在用wifi join指令,直接ping就可以通baidu。
下面就來(lái)看看這個(gè)過(guò)程是如何實(shí)現(xiàn)的。
對(duì)比一下自建項(xiàng)目和官方項(xiàng)目的文件差異,主要的差別在于port目錄下多了一個(gè)wifi_config.c的文件。雖然官方例程中還有一個(gè)ef_fal_port.c的文件,不過(guò)我是放在EasyFlash的包中了。下次還是要學(xué)習(xí)官方的做法,放在port目錄下,這樣可以有效防止更新工具包的時(shí)候把ef_fal_port.c文件給搞丟了。
學(xué)習(xí)wifi_config.c文件
在文件的最底下,有一個(gè)wlan_autoconnect_init的函數(shù),先看看這個(gè)函數(shù)會(huì)在哪里被調(diào)用。查找一下原來(lái)是在main.c中被調(diào)用。也就是說(shuō)在主線程上先配置了wifi自動(dòng)重連的一些信息,然后又使能了自動(dòng)重連。以此來(lái)實(shí)現(xiàn)重啟之后wifi自動(dòng)重新的功能。
下面來(lái)看看這個(gè)wlan_autoconnect_init函數(shù)到底做了什么配置
一開(kāi)始是兩個(gè)初始化函數(shù)
接下來(lái)的rt_wlan_cfg_set_ops函數(shù)位于wlan_cfg.c文件中,主要是調(diào)用了rt_wlan_cfg_init函數(shù)。這里應(yīng)該是申請(qǐng)一段內(nèi)存來(lái)保存配置信息吧。
那到底這些配置信息是保存在什么地方呢?注意rt_wlan_cfg_set_ops函數(shù)傳入的參數(shù)是指針,指向哪里呢?
這三個(gè)是什么呢?
這三個(gè)函數(shù)的具體實(shí)現(xiàn)用到了兩個(gè)函數(shù)ef_get_env_blob和ef_set_env_blob,這兩個(gè)函數(shù)位于ef_env.c文件中
就清楚了,這里就是調(diào)用了easyflash的api來(lái)保存和獲取環(huán)境變量。
移植到自己的項(xiàng)目中實(shí)驗(yàn)
既然清楚了整個(gè)處理流程,那就是將文件復(fù)制到自己的工程中,驗(yàn)證一下
編譯通過(guò),下載到板卡上驗(yàn)證,可以,自動(dòng)重連了。
-
WLAN
+關(guān)注
關(guān)注
2文章
657瀏覽量
73083 -
wifi模塊
+關(guān)注
關(guān)注
60文章
379瀏覽量
73469 -
RT-Thread
+關(guān)注
關(guān)注
31文章
1285瀏覽量
40079 -
ART-Pi
+關(guān)注
關(guān)注
0文章
23瀏覽量
1296
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論