制作自己开发板的rt-thread bsp

目的

通过官方的模板制作自己开发板的BSP

第一步 复制相关文件

  • 官网下载下来的源代码解压得到rt-thread文件夹,在另一个地方给我们的工程新建一个目录,比如命名为rt-thread-port。把rt-thread目录中除了bsp之外的文件夹和文件都复制过来。
  • 在rt-thread-port中新建bsp文件夹,bsp下新建stm32,stm32下面新建libraries
    制作自己开发板的rt-thread bsp

我的开发板是stm32f103rct6, 所以只把rt-thread/bps/stm32/libraries下的HAL_Drivers 、STM32F1xx_HAL和Kconfig 复制过来。

  • rt-thread/bps/stm32/libraries/templates下的stm32f10x复制到rt-thread-port\bsp\stm32下,重新命名为自己想要的名字,我这开发板是微雪的open103r,我这里命名为open103r_bsp 所以如下

制作自己开发板的rt-thread bsp

第二步 cubemx配置工程

官方教程这部分说的有点含糊,这里具体说明

  • 来到open103r_bsp目录,把boardCubeMX_Config整个文件夹删除

  • 打开stm32cubemx软件, mcu选择stm32f103rctx
    分别配置时钟、SYS(Debug选择Serial Wire)、串口1(打开全局中断)
    制作自己开发板的rt-thread bsp
    制作自己开发板的rt-thread bsp
    制作自己开发板的rt-thread bsp
    制作自己开发板的rt-thread bsp

  • 接下来工程配置很关键, 搞不好就会生成运行不了的固件,一定要按如下配置
    制作自己开发板的rt-thread bsp
    制作自己开发板的rt-thread bsp
    可以生成了。生成完后是这样的:
    制作自己开发板的rt-thread bsp

  • 修改board.c board.h文件
    将Src/main.c中SystemClock_Config 替换board.c中的SystemClock_Config ;stm32rct6的flash是256k, ram是48k ,对应的修改board.h如下
    制作自己开发板的rt-thread bsp

  • 修改链接脚本,我用gcc ,把以只需要修改linker_scripts/link.lds文件
    制作自己开发板的rt-thread bsp

  • 修改SConscipt文件, 启动文件和宏定义根据实际情况修改
    制作自己开发板的rt-thread bsp

第三步 构建

  • 修改board目录下的kconfig
    制作自己开发板的rt-thread bsp
    在我们的bsp根目录运行menuconfig (env/scons等开发工具使用教程参考官网文档
    制作自己开发板的rt-thread bsp
    这里要注意选择串口1作为控制台
    制作自己开发板的rt-thread bsp
    要使能串口1
    制作自己开发板的rt-thread bsp
    完了之后 ,保存退出
  • 终端直接输入scons,编译成功之后 是这样的
    制作自己开发板的rt-thread bsp
    把rtthread.bin(就在bsp目录open103r_bsp下)烧进板子,USB串口助手连接板子(这里是PA9(TX) PA10(RX))使用putty之类的终端, 重启
    制作自己开发板的rt-thread bsp

制作自己开发板的rt-thread bsp
成功了。

上一篇:扫 猫 线(误)


下一篇:SegmentTree——区间更新问题