rt_thread studio结合cubmx进行stm32驱动开发学习
RT-Thread Studio
不用考虑移植问题
STM32CubeMx
快速的配置芯片外设的时钟和引脚,使驱动的开发变得简单
不依赖与rtt设备驱动框架,直接用cubmx生成的外设驱动,最终达到类似并取代keil的功能
-
使用
RT-Thread Studio
新建 RT-Thread 工程,注意特殊串口的管脚重映射问题。 -
使用
STM32CubeMx
配置外设和系统时钟 -
将
CubeMx
生成的stm32xxxx_hal_msp.c(主要利用引脚和时钟初始化,所以自动生成代码配置中不能选择为每个外设都生成
函数复制到.c/.h
)Studio项目文件夹的drivers下,并将文件中
#include "main.h"
替换为#include "board.h"。
-
修改
stm32xxxx_hal_config.h
文件,打开相应外设支持。
-
复制 CubeMx 工程中
main.c
文件的void SystemClock_Config(void)
,替换board.c
文件中,修改为与实际匹配对应的时钟配置函数,因为默认studio系统内部时钟 HSI. -
使用外设基本函数进行读写等操作。
二生成bin和hex:默认生成elf文件若要生成bin和HEX需要以下设置:
2.1生成bin:打开工程构建设置:arm-none-eabi-objcopy -O ihex "${ProjName}.elf" "${ProjName}.hex" "${ProjName}.bin"
2.2生成hex配置
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?