RT-Thread studio功能开发--USB挂载U盘

1.创建项目

首先创建一个,注意使用的RT-Thread的版本为5.1.0(不同版本可能会有差异)

创建项目完成先编译,会发现bord.c会有error

这个应该是该版本代码的bug希望后续可以完善。

通过报错发现是缺少该类型的定定义

通过其他版本的代码把这个定义COPY过来

再编译就没问题了。

2.打开组件

打开FATFS组件,DFS组件是FATFS的依赖项,打开FATFS后会直接打开DFS。

3.设置组件-》设备驱动程序,打开USB,使能U盘驱动程序。

环境配置好之后,接下来就开始write code了。

我们要知道,再rtt中硬件配置都是再drivers/board.h中通过宏统一控制的。

4.打开board.h,找到宏定义,根据官方说明的步骤来配置。

第一步让我们打开驱动框架支持,这部分我们已经完成了,已经打开的FATFS框架和DFS已经是了。

第二步我们在board.c中打开这个宏

第三步和第四步我们要使用STM32CubeMX来进行代码配置(本质上还是使用HAL库进行配置)来生成所需函数。

5.使用STM32CubeMX

第一部根据我们的MCU芯片来开始我们的项目。

搜索对应的芯片双击生成项目。

首先配置RCC时钟控制器(一般都是配置为高速外部时钟,由外部晶振控制,)这个结合自己板子配置

然后再打开USB_OTG_FS

检查一下时钟树,再配置一下项目就可以了

生成项目并打开文件夹

找到项目文件夹,找到对应文件,获取对应的函数

6.第三步添加代码

根据board.h中官方声明,第三步我们要将stm32l4xx_hal_msp.c文件中的HAL_HCD_MspInit函数添加到board.c的末尾。

7.第四步修改时钟

将main.c文件中的SystemClock_Config()函数替换board.c中的此功能。直接替换drv_clk.c中的该函数,并把传参取消

8.第五步修改错误

我们在stm32l4xx_hal_conf.h打开#define HAL_HCD_MODULE_ENABLED这个宏定义,然后编译。然后我们发现有个错误(版本问题,希望官方完善),我们直接修改。

还有一个错误RT_DEBUG_LOG未定义,从其他版本直接拿过来修改

接打印测试,OK!

下班!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

602寝室长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值