概述
WHD是一個獨立的嵌入式Wi-Fi主機驅動程序,它提供了一組與英飛凌WLAN芯片交互的api。WHD是一個獨立的固件產品,可以很容易地移植到任何嵌入式軟件環境,包括流行的物聯網框架。因此,WHD包含了RTOS和TCP/IP網絡抽象層的鉤子。
該存儲庫已將WHD適應于RT-Thread系統,目前僅支持SDIO總線協議,并使用RT-Thread的mmcsd進行SDIO總線操作。
歡迎大家PR支持更多總線接口和芯片。
使用
在軟件包選中 Wifi-Host-Driver(WHD) for RT-Thread
軟件包配置
注意
SDIO驅動需要支持數據流傳輸,在RT-Thread的bsp中,大多數芯片都未適配數據流傳輸的功能。
Cortex-M4內核需要軟件來計算CRC16并在數據后面發送它。
對于Cortex-M7內核,只需要修改drv_sdio.c文件的一處地方即可,示例如下:
資源下載(該項目默認使用內部資源,可跳過這一步驟)
WiFi固件儲存到代碼區域中,固件會變的很大,燒錄很慢,影響調試進度!
通過FAL組件外部加載固件以及CLM文件,這樣MCU固件就能縮減很多,燒錄也會快很多!
可以通過ymodem協議下載資源文件。驅動會使用FAL組件來加載資源文件。
資源下載功能依賴于ymodem組件,請確保打開RT_USING_RYM和WHD_RESOURCES_IN_EXTERNAL_STORAGE宏定義。
在終端上執行whd_res_download命令開始下載資源。
該命令需要輸入資源文件的分區名。
下載資源文件的實例(使用默認分區名,輸入自己的分區名):
ymodem可以使用xshell工具,在完成命令輸入后,等待xshell啟動文件傳輸。
此時,在xshell中右鍵單擊鼠標,選擇文件傳輸到使用ymodem發送。
在whd的resources(wifi-host-driver/WiFi_Host_Driver/resources)目錄下,選擇對應芯片的資源文件。
傳輸完成后,msh將輸出如下日志:
下載完固件和clm資源文件后,復位重啟即可正常加載資源文件。
芯片支持
‘x’ 表示不支持
‘o’ 表示已測試和支持
‘*’ 理論上支持,但未經過測試
ART-PI測試
ART-PI可以使用英飛凌cyw43438 Wi-Fi模塊進行該驅動測試
所有該驅動可以使用ART-PI開發板進行測試,可以參考ART-PI RT-Thread WiFi-Host-Driver(https://github.com/Evlers/art-pi_rt-thread)項目
HPM6880和GD32F470的測試
GD32的測試代碼后期我會上傳至GitHub倉庫
GD32F470 + CYWL6208模組(芯片CYW43438)
GD32F470 + CYWL6302模組(芯片CYW43012)
HPM6880 + CYWL6302模組(芯片CYW43012)
-
英飛凌
+關注
關注
67文章
2319瀏覽量
140198 -
驅動程序
+關注
關注
19文章
859瀏覽量
48844 -
RT-Thread
+關注
關注
32文章
1370瀏覽量
41512
發布評論請先 登錄
連接到 WPA3_WPA2_PSK 或 WPA3_SAE Wi-Fi 網絡時系統掛起,為什么?
nRF Cloud Wi-Fi 定位服務
Wi-Fi 定位服務
推出了期待已久的 nRF7002 低功耗Wi-Fi 6
如何將RT-Thread移植到NXP MCUXPressoIDE上

華為海思正式進入Wi-Fi FEM賽道?
從Wi-Fi 4到Wi-Fi 7:網速飆升40倍的無線革命

RT-Thread上CAN實踐

Wi-Fi 7與Wi-Fi 6E有什么區別
開源共生 商業共贏 | RT-Thread 2024開發者大會報名啟動!

2024 RT-Thread全球巡回 線下培訓火熱來襲!

【好書推薦】RT-Thread設備驅動開發指南

AT32F437 USB HOST RT-thread u盤讀寫不穩定是怎么回事?
RT-Thread 新里程碑達成——GitHub Star 破萬!

基于 RT-Thread專業版的EtherCAT主站方案

評論