概述
WHD是一個(gè)獨(dú)立的嵌入式Wi-Fi主機(jī)驅(qū)動(dòng)程序,它提供了一組與英飛凌WLAN芯片交互的api。WHD是一個(gè)獨(dú)立的固件產(chǎn)品,可以很容易地移植到任何嵌入式軟件環(huán)境,包括流行的物聯(lián)網(wǎng)框架。因此,WHD包含了RTOS和TCP/IP網(wǎng)絡(luò)抽象層的鉤子。
該存儲(chǔ)庫(kù)已將WHD適應(yīng)于RT-Thread系統(tǒng),目前僅支持SDIO總線協(xié)議,并使用RT-Thread的mmcsd進(jìn)行SDIO總線操作。
歡迎大家PR支持更多總線接口和芯片。
使用
在軟件包選中 Wifi-Host-Driver(WHD) for RT-Thread
軟件包配置
注意
SDIO驅(qū)動(dòng)需要支持?jǐn)?shù)據(jù)流傳輸,在RT-Thread的bsp中,大多數(shù)芯片都未適配數(shù)據(jù)流傳輸?shù)墓δ堋?/p>
Cortex-M4內(nèi)核需要軟件來(lái)計(jì)算CRC16并在數(shù)據(jù)后面發(fā)送它。
對(duì)于Cortex-M7內(nèi)核,只需要修改drv_sdio.c文件的一處地方即可,示例如下:
資源下載(該項(xiàng)目默認(rèn)使用內(nèi)部資源,可跳過(guò)這一步驟)
WiFi固件儲(chǔ)存到代碼區(qū)域中,固件會(huì)變的很大,燒錄很慢,影響調(diào)試進(jìn)度!
通過(guò)FAL組件外部加載固件以及CLM文件,這樣MCU固件就能縮減很多,燒錄也會(huì)快很多!
可以通過(guò)ymodem協(xié)議下載資源文件。驅(qū)動(dòng)會(huì)使用FAL組件來(lái)加載資源文件。
資源下載功能依賴于ymodem組件,請(qǐng)確保打開RT_USING_RYM和WHD_RESOURCES_IN_EXTERNAL_STORAGE宏定義。
在終端上執(zhí)行whd_res_download命令開始下載資源。
該命令需要輸入資源文件的分區(qū)名。
下載資源文件的實(shí)例(使用默認(rèn)分區(qū)名,輸入自己的分區(qū)名):
ymodem可以使用xshell工具,在完成命令輸入后,等待xshell啟動(dòng)文件傳輸。
此時(shí),在xshell中右鍵單擊鼠標(biāo),選擇文件傳輸到使用ymodem發(fā)送。
在whd的resources(wifi-host-driver/WiFi_Host_Driver/resources)目錄下,選擇對(duì)應(yīng)芯片的資源文件。
傳輸完成后,msh將輸出如下日志:
下載完固件和clm資源文件后,復(fù)位重啟即可正常加載資源文件。
芯片支持
‘x’ 表示不支持
‘o’ 表示已測(cè)試和支持
‘*’ 理論上支持,但未經(jīng)過(guò)測(cè)試
ART-PI測(cè)試
ART-PI可以使用英飛凌cyw43438 Wi-Fi模塊進(jìn)行該驅(qū)動(dòng)測(cè)試
所有該驅(qū)動(dòng)可以使用ART-PI開發(fā)板進(jìn)行測(cè)試,可以參考ART-PI RT-Thread WiFi-Host-Driver(https://github.com/Evlers/art-pi_rt-thread)項(xiàng)目
HPM6880和GD32F470的測(cè)試
GD32的測(cè)試代碼后期我會(huì)上傳至GitHub倉(cāng)庫(kù)
GD32F470 + CYWL6208模組(芯片CYW43438)
GD32F470 + CYWL6302模組(芯片CYW43012)
HPM6880 + CYWL6302模組(芯片CYW43012)
-
英飛凌
+關(guān)注
關(guān)注
66文章
2151瀏覽量
138415 -
驅(qū)動(dòng)程序
+關(guān)注
關(guān)注
19文章
826瀏覽量
47958 -
RT-Thread
+關(guān)注
關(guān)注
31文章
1272瀏覽量
39921
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論