RT-Thread Studio STM32使用xx_hal_msp.c 外设初始化

背景

  • 平台:STM32
  • IDE:RT-Thread Studio
  • 使用RT-Thread Studio开发各个外设的驱动,特殊的平台或新平台,可能遇到外设引脚与时钟初始化问题。
  • 可以通过STM32CubeMX,生成板级的外设引脚初始化文件xx_hal_msp.c。
  • STM32F1 系列:stm32f1xx_hal_msp.c STM32L4系列:stm32l4xx_hal_msp.c。
  • RT-Thread Studio 可以通过在board.h中配置引脚,实现初始化功能!!
  • 如果感觉RT-Thread Studio 外设时钟与引脚初始化不够全面,不靠谱怎么办?
  • 可以手动把 STM32CubeMX生成的外设引脚初始化文件,加入RT-Thread Studio工程。

 

操作方法

  • 使用STM32CubeMX生成外设的初始化文件,如:stm32f1xx_hal_msp.c

2020-12-28_092500.png

2020-12-28_092625.png

  • 复制【stm32f1xx_hal_msp.c】到RT-Thread Studio 【drivers】 目录下。
  • 刷新RT-Thread Studio 工程,发现【stm32f1xx_hal_msp.c】已经加入工程。

2020-12-28_092835.png

2020-12-28_092814.png

  • 编译:发现找不到main.h文件,如下:

2020-12-28_102907.png

  • 修改【stm32f1xx_hal_msp.c】
#include "main.h"
改为:
#include "stm32f1xx_hal.h"
  • 根据外设类型,开启外设

2020-12-28_104132.png

2020-12-28_104230.png

  • 可以根据需要,把 RT-Thread Studio 工程drivers 目录下的驱动,更换为rt-thread 官方源码:
bsp\stm32\libraries\HAL_Drivers

2020-12-28_093006.png

  • 可以编写与配置Kconfig,用于menuconfig图形配置管理宏,开启外设!!
  • 也可以更改board.h,手动管理【宏】!!

 

回顾总结

  • RT-Thread Studio 想尽可能的让开发简单粗暴,但是,外设引脚与时钟配置千奇百怪,估计,很难做到通用!
  • STM32CubeMX 配置外设与引脚、时钟初始化,还是不错的。
  • 学习或是工程开发,会根据项目的复杂度,决定是否需要这么做。
  • 灵活使用各种工具,提高开发效率,而不是让工具束缚自己的思想,影响自己的设计开发。

猜你喜欢

转载自blog.csdn.net/tcjy1000/article/details/111850337