STM32
登录
直播中
陈伟
7年用户
1484经验值
私信
关注
[问答]
怎样将RT-Thread移植到STM32上去呢
开启该帖子的消息推送
RT-Thread
STM32
移植
怎样将RT-Thread移植到
STM32
上去呢?
怎样获取STM32的裸机工程模板呢?
回帖
(1)
王英
2021-12-15 09:24:07
1、获取 STM32 的裸机工程模板(获取对应的芯片模板)
2、下载 RT-Thread Nano 源码
3、安装 RT-Thread Package
下载下来之后是一个以 exe 为后缀的文件,点击安装即可, 安装目录与你的 KEIL 安
装目录一样,安装成功之后,可以在 KEIL 的 PACK 目录下找到刚刚安装的 Package 的所
有的文件,具体下图:
这样安装成功之后, 就可以在 KEIL 里面的软件包管理器中将 RT-Thread Nano 直接添
加到工程里面,具体见下图
3、拷贝 RT-Thread Package 到裸机工程根目录
RT-Thread 文件夹下就是 RT-Thread Nano 的所有东西,该文件夹下的具体内容如下
4、拷贝 rtconfig.h 文件到 user 文件夹
将 RT-Thread/3.0.3/bsp 文件夹下面的 rtconfig.h 文件拷贝到工程根目录下面的 user文件夹, 可以通过修改这个 RT-Thread 内核的配置头文件来裁剪 RT-Thread 的功能
5、拷贝 board.c 文件到 user 文件夹
将 RT-Thread/3.0.3/bsp 文件夹下面的 board.c 文件拷贝到工程根目录下面的 user 文件夹, 等下我们需要对这个 board.c 进行修改。
6、添加 RT-Thread 源码到工程组文件夹
新建 rtt/source 和 rtt/ports 两个组文件夹,其中 rtt/source 用于存放 src 文件夹的内容, rtt/ports 用于存放 libcpu/arm/cortex-m? 文件夹的内容,“?”表示 3、 4 或者 7。(特别注意箭头处)
7、指定 RT-Thread 头文件的路径
RT-Thread 的 源 码 里 面 只 有 RTThread3.0.3componentsfinsh、 RTThread3.0.3include 和 RT-Thread3.0.3includelibc 和 user 文件夹下rtconfig.h 有头文件,只需要将这四个头文件的路径在开发环境里面指定即可。
8、修改 rtconfig.h
按下图所示进行修改
9、在 user 目录下新建一个 board.h 头文件,用来包含固件库和BSP 相关的头文件和存放 board.c 里面的函数声明,同时在board.c文件中包含board.h文件,即 #include “board.h”
10、修改board.c文件
按下图所示进行修改
在 void rt_hw_board_init(void) 添加 SysTick_Config(SystemCoreClock / RT_TICK_PER_SECOND);说明SysTick_Config函数在core_cm3.h中。如下图
11、SysTick 中断服务函数在固件库文件 stm32f10x_it.c 中也定义了,而现在在 board.c 中又定义一次,那么编译的时候会出现重复定义的错误,解决方法是可以把 stm32f10x_it.c 中的注释或者删除即可。如下图
12、修改main.c
如下图所示:
13、编译。
1、获取 STM32 的裸机工程模板(获取对应的芯片模板)
2、下载 RT-Thread Nano 源码
3、安装 RT-Thread Package
下载下来之后是一个以 exe 为后缀的文件,点击安装即可, 安装目录与你的 KEIL 安
装目录一样,安装成功之后,可以在 KEIL 的 PACK 目录下找到刚刚安装的 Package 的所
有的文件,具体下图:
这样安装成功之后, 就可以在 KEIL 里面的软件包管理器中将 RT-Thread Nano 直接添
加到工程里面,具体见下图
3、拷贝 RT-Thread Package 到裸机工程根目录
RT-Thread 文件夹下就是 RT-Thread Nano 的所有东西,该文件夹下的具体内容如下
4、拷贝 rtconfig.h 文件到 user 文件夹
将 RT-Thread/3.0.3/bsp 文件夹下面的 rtconfig.h 文件拷贝到工程根目录下面的 user文件夹, 可以通过修改这个 RT-Thread 内核的配置头文件来裁剪 RT-Thread 的功能
5、拷贝 board.c 文件到 user 文件夹
将 RT-Thread/3.0.3/bsp 文件夹下面的 board.c 文件拷贝到工程根目录下面的 user 文件夹, 等下我们需要对这个 board.c 进行修改。
6、添加 RT-Thread 源码到工程组文件夹
新建 rtt/source 和 rtt/ports 两个组文件夹,其中 rtt/source 用于存放 src 文件夹的内容, rtt/ports 用于存放 libcpu/arm/cortex-m? 文件夹的内容,“?”表示 3、 4 或者 7。(特别注意箭头处)
7、指定 RT-Thread 头文件的路径
RT-Thread 的 源 码 里 面 只 有 RTThread3.0.3componentsfinsh、 RTThread3.0.3include 和 RT-Thread3.0.3includelibc 和 user 文件夹下rtconfig.h 有头文件,只需要将这四个头文件的路径在开发环境里面指定即可。
8、修改 rtconfig.h
按下图所示进行修改
9、在 user 目录下新建一个 board.h 头文件,用来包含固件库和BSP 相关的头文件和存放 board.c 里面的函数声明,同时在board.c文件中包含board.h文件,即 #include “board.h”
10、修改board.c文件
按下图所示进行修改
在 void rt_hw_board_init(void) 添加 SysTick_Config(SystemCoreClock / RT_TICK_PER_SECOND);说明SysTick_Config函数在core_cm3.h中。如下图
11、SysTick 中断服务函数在固件库文件 stm32f10x_it.c 中也定义了,而现在在 board.c 中又定义一次,那么编译的时候会出现重复定义的错误,解决方法是可以把 stm32f10x_it.c 中的注释或者删除即可。如下图
12、修改main.c
如下图所示:
13、编译。
举报
更多回帖
rotate(-90deg);
回复
相关问答
RT-Thread
STM32
移植
STM32
BSP
怎样
快速
移植
RT-Thread
到
STM32
开发板
上去
2021-10-19
2106
怎样
在
RT-Thread
Studio
上去
开启MQTT示例呢
2022-03-01
1447
STM32
F429是
怎样
移植
TouchGFX
到
RT-Thread
系统上的
2021-10-18
1685
怎样
在单片机
上去
移植
RT-Thread
操作系统
2021-08-13
1876
怎样
去
移植
基于
STM32
F767的
RT-Thread
操作系统呢
2021-11-26
1842
从μCOS-Ⅱ
到
RT-Thread
の
移植
方法是什么
2020-06-04
1342
请问一下
怎样
去
移植
RT-Thread
最小系统呢
2021-10-27
1705
如何基于CubeMX
移植
RT-Thread
Nano?
2021-03-29
2243
如何
将
RT-Thread
系统
移植
到
STM32
f103标准库上呢
2021-12-15
1901
如何
移植
RT-Thread
?
2021-11-29
1294
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
英国威廉希尔公司网站
william hill官网 版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分