问题描述
- 当前最新的 RT-Thread 版本:5.2.0,发现在 编译 BSP
stm32l476-st-nucleo
,缺少了STM32L4xx_HAL
驱动库,造成生成的 工程,如 Keil MDK5 工程无法编译通过 - 初步的【临时】解决方法是 回退 RT-Thread 的版本,把
STM32L4xx_HAL
找回来 - 由于
STM32L4xx_HAL
已经作为 在线软件包了,可以尝试使用 在线软件包的方式
在线软件包 STM32L4xx_HAL
- 使用 RT-Thread ENV 工具,当前 ENV 版本
2.0.0
- 在
bsp\stm32\stm32l476-st-nucleo
目录下,menuconfig 打开 图形界面配置
RT-Thread online packages --->
peripheral libraries and drivers --->
HAL & SDK Drivers --->
STM32 HAL & SDK Drivers --->
STM32 L4 HAL driver package --->
- 发现当前 BSP 工程已经 默认选择了
STM32 L4 HAL driver package
相关的Kconfig配置 - 【更新获取】
STM32 L4 HAL driver package
,使用 RT-Thread ENV 工具: - 默认只选择了 STM32L4 HAL的配置,还需要
pkgs --update
方式,把在线的 软件包,也就是STM32L4 HAL
库拉取到本地
- 【更新工程】,
STM32L4 HAL
拉取到本地后,使用 RT-Thread ENV 工具更新一下工程,当前是 Keil MDK5 工程scons --target=mdk5
编译
- 生成的工程,发现 STM32L4 HAL 库已经有了,编译通过
小结
- STM32L4 HAL 库,作为在线的软件包,可以减少 RT-Thread BSP 的体积
- 需要熟悉 RT-Thread ENV 工具的使用,配置与更新软件包的方法,Kconfig 配置好了,还要记得
pkgs --update
方式把 软件包代码拉取到本地。 - 其他的一些大的 BSP HAL库,依旧可以做成 在线软件包的方式,这样可以减少 RT-Thread BSP 本身的体积
- 如果 BSP HAL 做成了在线软件包,建议通过 【文档】或【教程】等方式,让开发者快速上手。