
一. 简介 在众多RTOS中,选择了RT-Thread进行学习,最开始也是徘徊了很久,看知乎,刷b站,最终决定支持国货。接下来,将会在这里持续分享关于RT-Thread的相关知识和质询。(绝大多数是基于stm32平台的)% j% g. ]" n1 L% [+ F7 @0 s3 D0 i & Z- b6 h7 w* Y* Z5 e1 X 二. 源码下载 这里是基于Nano版本的(精简版),主要是方便,简单。后面熟悉的差不多了就转移到标准版本上去。下载地址如下,也可以直接去官网下载。 , X3 R9 @9 q2 y& _+ h( F0 y% G1 R 三. 移植模板创建 1. 下载下来的源码文件目录如下,其中我们用到的有以下三个部分。component和bsp后面也是会用到的,到时候可以根据需求来添加 ![]() 2. 创建一个rt-thread移植demo文件夹,将nano上面对应的文件夹下面的所有文件copy到这个里面来,注意,libcpu根据自己的硬件平台来选择,stm32f1,就copy M3文件夹下的所有文件到这里面来。注意还要将bsp文件夹下的board.c和rtconfig.h 复制过来。libcpu中只保留contex_rvds.S这一个.S文件。 ![]() 3. 将copy过来的文件添加到Keil中,和创建stm32工程模板类似。到这里所有的准备工作就完成了。剩下的就是修改代码了。 四. 修改代码( [* R) m2 S0 E# v
这里移植就完成了。 如果是M7内核的话,还有一点需要注意的位置就是多了一个cpu_cache.c函数,里面include了一个board.h文件,nano里面没有这个文件,需要将其注释掉,替换为stm32h7xx.h,就ok啦。 % L0 d+ }& t6 _" D! ~. F1 N' `/ J 五. 效果展示: ~: Y8 Y6 b7 A1 s! o. F7 v. v 将main函数中添加三行代码(led灯的模板)如下,如果有实验效果则说明移植成功。![]() |
【2025·STM32峰会】GUI解决方案实训分享1-对LVGL咖啡机例程的牛刀小试以及问题排查
OpenBLT移植到STM32F405开发板
为什么要先开启STM32外设时钟?
【STM32MP157】从ST官方例程中分析RPMsg-TTY/SDB核间通信的使用方法
【经验分享】STM32实例-RTC实时时钟实验④-获取RTC时间函数与中断服务函数
STM32 以太网 MAC Loopback 的实现
STM32功能安全设计包,助力产品功能安全认证
基于STM32启动过程startup_xxxx.s文件经验分享
HRTIM 指南
ST 微控制器电磁兼容性 (EMC) 设计指南