概述
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)
-
英飞凌
+关注
关注
66文章
2128浏览量
138205 -
驱动程序
+关注
关注
19文章
816浏览量
47889 -
RT-Thread
+关注
关注
31文章
1256浏览量
39791
发布评论请先 登录
相关推荐
评论