嵌入式技术论坛
直播中

ss

6年用户 8762经验值
擅长:电源/新能源 制造/封装 RF/无线
私信 关注
[经验]

使用RT-Thread Studio开发各个外设的驱动的操作方法

背景
平台: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


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


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

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


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

可以编写与配置Kconfig,用于menuconfig图形配置管理宏,开启外设
也可以更改board.h,手动管理【宏】
回顾总结
RT-Thread Studio 想尽可能的让开发简单粗暴,但是,外设引脚与时钟配置千奇百怪,估计,很难做到通用
STM32CubeMX 配置外设与引脚、时钟初始化,还是不错的。
学习或是工程开发,会根据项目的复杂度,决定是否需要这么做。
灵活使用各种工具,提高开发效率,而不是让工具束缚自己的思想,影响自己的设计开发。

更多回帖

发帖
×
20
完善资料,
赚取积分