RT-Thread Studio开启WiFi连接

RT-Thread Studio开启WiFi连接

我们在上一个工程(RT-Thread Studio采集温湿度数据)的基础上添加WiFi连接功能;
ATK-Pandora-STM32L4开发板上板载了一个正基公司的AP6181 WiFi 模组,通过SDIO接口与MCU进行连接,原理图如下所示:
在这里插入图片描述

一、开启WIFI功能

打开【RT-Thread Settings】,j将SDIO功能打开,然后选择【更多配置】
在这里插入图片描述
在组件中找到【使用WiFi框架】将其选中
在这里插入图片描述
然后构建,下载,然后在串口终端输入wifi scan,很好,没有用
在这里插入图片描述
为什么呢,因为RT-Thread Studio并没有导入和AP6181 WiFi 模组相关的代码,所以,好吧,不能用,怎么办。本人本着顽强不屈的精神,对比了正点原子提供的潘多拉开发板的源码,然后将其中和AP6181有关的代码拿来一用。

二、AP6181 WiFi 模组代码移植

打开正点原子给潘多拉开发板提供的源码;
1、将3,程序源码\2,进阶例程 - RT-Thread IoT例程\libraries下的wifirt_ota文件夹复制
在这里插入图片描述
将其粘贴到本次工程的libraries文件夹下
在这里插入图片描述
2、将3,程序源码\2,进阶例程 - RT-Thread IoT例程\drivers下的drv_wlan.cdrv_wlan.h文件夹复制
在这里插入图片描述
粘贴到本次工程的board\ports文件夹下
在这里插入图片描述
4、然后点击工具栏上【打开构建配置】按钮,在工具设置配置页,点击GNU ARM Cross C Compiler下的Includes配置项打开头文件路径配置参数,点击Inlucde paths(-I)配置栏的增按钮进行头文件路径的添加
在这里插入图片描述
选中工作空间下的${workspace_loc:/${ProjName}/libraries/rt_ota/inc},然后保存
在这里插入图片描述
点击 Cross ARM C Linker下的 Libraries配置项设置外部二进制库文件,点击 Libraries(-l)配置栏的增按钮进行进行库文件的添加,在 Library search path(-L)配置栏配置库文件相应的路径。
在这里插入图片描述
在 Libraries(-l) 配置栏增加二进制库文件名称,注意需要去掉前缀 lib 与后缀 .a 。
在这里插入图片描述

5、打开drv_wlan.h,添加如下代码:

#define BSP_USING_WIFI
#define BSP_USING_WIFI_AUTO_INIT

// WiFi IRQ
#define PIN_WIFI_IRQ  34        // PC5 :  WIFI_INT     --> WIFI

#define RT_WLAN_PROT_LWIP  ("lwip")

在这里插入图片描述

三、添加软件包

在上面的代码中,需要用到EasyFlash的支持,所以我们打开【RT-Thread Settings】,点击【Add】
在这里插入图片描述
搜索EasyFlash,点击添加
在这里插入图片描述
搜索fal,点击添加
在这里插入图片描述
将【RT-Thread Settings】保存,修改过滤器,构建,然后我们就会发现好多报错:
在这里插入图片描述
看起来好像是同一个问题,怎么解决呢,找到packages->EasyFlash->port,发现下面的文件都失效了
在这里插入图片描述
ports上右击->属性,将【将资源从构建中排除】的勾选驱动,应用并关闭
在这里插入图片描述
然后再将ef_sfud_port.c右键,将勾选选中
在这里插入图片描述
然后重新构建一次,继续报错,然后我们再次打开【RT-Thread Settings】,将【DFS】、【libc】和【SDIO】打开
在这里插入图片描述
好的,搞不下去,等我有空再想办法解决吧

发布了62 篇原创文章 · 获赞 13 · 访问量 5572

猜你喜欢

转载自blog.csdn.net/qq_38113006/article/details/105361447