RTThread BSP移植制作文档

移植记录随笔,为了备份,也为了给有用的人一些参考!公开免费的,格式随意些!

移植的主要步骤有大神总结如下:

  主要包括如下几个步骤:

  1、查找并复制合适的通用模板

  2、使用CubeMX工具配置工程

  3、修改BSP中Kconfig文件

  4、修改构建工程相关文件

  5、添加需要的程序文件

  主要任务是建立让操作系统运行的基本环境,需要完成的主要工作是:

  • 1)初始化 CPU 内部寄存器,设定 RAM 工作时序。

  • 2)实现时钟驱动及中断控制器驱动,完善中断管理。

  • 3)实现串口和 GPIO 驱动。

  • 4)初始化动态内存堆,实现动态堆内存管理。

2、移植步骤

注:图中包含路径仅参考!!!

1、下载RTThread系统软件包到本地

2、在rt-thread-master\bsp中选取对应芯片的bsp程序,根据官方提供已有模板进行BSP的移植

我们选取的是rt-thread-master\bsp\stm32\libraries\templates\stm32f10x进行移植

3、将该文件夹复制到rt-thread-master\bsp\stm32下并改为自己对应工程名

4、在该目录下rt-thread-master\bsp\stm32\stm32f103rct6-xxx-irobot\board\CubeMX_Config,双击打开CubeMX工程CubeMx_Config文件

5、在工程中配置相关时钟

6、配置使能相关功能接口,如UART1

7、配置工程信息,并电机GENERATE CODE生成程序,注意红框中根据自己实际情况修改

8、生成代码后将CubeMX_Config/Core/Inc & Src复制并替换

以上步骤完成后,工程文件拷贝结束,进入工程文件修改阶段

1、配置系统时钟函数

拷贝board/CubeMx_Config/Src/main.c 中‘SystemClock_Config()’替换“board.c”中SystemClock_Config()

2、修改FLASH/RAM相关参数

打开“board.h”文件,找到宏定义:STM32_FLASH_SIZE/STM32_SRAM_SIZE 两个宏分别定义了芯片Flash/SRam的大小,根据数据手册修改即可

3、修改编译加载文件及KConfig中芯片选型

编译加载文件:SConscript:

Kconfig:

打开board/Kconfig文件,配置芯片型号,系统不支持Vc系列,同位替换为Xe系列,即config SOC_STM32F103Ve

4、修改MDK链接脚本

打开board\linker_scripts\link文件,windows环境下如下:

修改文件中Flash/Sram大小

5、打开BSP/stm32/Template Keil工程,配置工程芯片型号,及下载器型号

保存退出。

6、rtconfig.h配置

  1、打开ENV工具,切换到对应工程目录下,eg:rt-thread-master\bsp\stm32\stm32f103rct6-xxxx-irobot

  2、输入menuconfig命令,进入UI按需对工程进行模块使能配置,保存退出并生成新的rtconfig.h文件。

  3、env工具输入命令"scons --target=mdk5"重新生成工程。

  4、待生成完成后,打开BSP/stm32/Project Keil工程进行编译下载,观察反应即可。

至此,移植完成。

  • 12
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值