配置 RT-Thread 的工程目录

1. 前言

RT-Thread 基于 Scons 的包管理非常方便让我们使用 RT-Thread 进行开发,但在实际工程中将应用代码写到 RT-Thread 官方提供的 bsp 目录下面会非常不便于使用,无法使用自己 git 工具进行代码管理。
解决方式,可以是 fork 出一个基于特定版本的 RT-Thread,然后基于该版本上开发,这样能够有代码管理,但是后续需要更新 RT-Thread 内核源码就会非常不方便。
如果可以将 RT-Thread 以 submodule 的方式包含进工程,那么就可以实现即能够进行包管理,也能与官方同步升级 RT-Thread 版本。

2. 实战

本篇将以下面步骤进行操作,流程如下:

  1. 创建 git 仓库
  2. 添加 rt-thread 为 submodule
  3. 添加应用程序目录
  4. 修改 Scons 和 Kconfig 脚本
  5. 基于 vscode 下的开发环境搭建

2.1 创建 git 仓库

在 gitee 上创建如下仓库:仓库创建
在这里插入图片描述

2.2 添加 rt-thread 为 submodule

git clone 到本地,随后输入 git submodule add https://gitee.com/rtthread/rt-thread.git 将 RT-Thread 主仓库添加到子模块里:
在这里插入图片描述
下载成功后,会在目录里面生成 .gitmodules 文件,该文件里面记录了子模块信息,虽然提交工程:
在这里插入图片描述
此时远端仓库就会包含 rt-thread 主分支内容,后续 rt-thread 需要更新的话,可以通过 git 更新。
在这里插入图片描述

2.3 添加应用程序目录

应用目录以基于 bsp/stm32/stm32h743-amfly-v7 :
在这里插入图片描述
提交工程
在这里插入图片描述

2.4 修改 Kconfig 和 Scons 脚本

Kconfig

很显然目前 Kconfig 和 Scons 脚本是不能正常使用的,先修改 Kconfig 文件:
先修改根目录下的:Kconfig

mainmenu "RT-Thread Configuration"

config MCU_MANUFACTURER
    string
    option env="MCU_MANUFACTURER"
    default "stm32"

config BSP_DIR
    string
    option env="BSP_ROOT"
    default "."

config RTT_DIR
    string
    option env="RTT_ROOT"
    default "rt-thread"

config PKGS_DIR
    string
    option env="PKGS_ROOT"
    default "packages"

source "$RTT_DIR/Kconfig"
source "$PKGS_DIR/Kconfig"
source "$RTT_DIR/bsp/$MCU_MANUFACTURER/libraries/Kconfig"
source "board/Kconfig"

前后对比如下:
在这里插入图片描述
修改board目录的:board\Kconfig

menu "Hardware Drivers Config"

config SOC_STM32H743XI
    bool
    select SOC_SERIES_STM32H7
    select RT_USING_COMPONENTS_INIT
    select RT_USING_USER_MAIN
    default y

menu "Onboard Peripheral Drivers"

endmenu

menu "On-chip Peripheral Drivers"

    config BSP_USING_GPIO
        bool "Enable GPIO"
        select RT_USING_PIN
        default y

    menuconfig BSP_USING_UART
        bool "Enable UART"
        default y
        select RT_USING_SERIAL
        if BSP_USING_UART
            config BSP_USING_UART1
                bool "Enable UART1"
                default y

        endif

    source "$RTT_DIR/bsp/$MCU_MANUFACTURER/libraries/HAL_Drivers/Kconfig"

endmenu

menu "Board extended module Drivers"

endmenu

endmenu

前后对比如下:
在这里插入图片描述
成功后可以 menuconfig 正常显示出 Kconfig 菜单
在这里插入图片描述

Scons

先修改 rtconfig.py 文件
在这里插入图片描述
修改 Sconstruct 文件
在这里插入图片描述
大家可以通过 gitee 中修改项的对比, 详细看我修改了什么 修改项对比
在这里插入图片描述
在这里插入图片描述

2.5 修改 vscode

使用 Vscode 在 RT-Thread 中查找经常会查找到其它板卡中,导致很多无效查询,解决办法屏蔽掉不需要的目录:
Shift + Ctrl + P 输入 setting.json 选择 workspace settings,该选项只会在本工程生效,不会影响其它工程:
在这里插入图片描述
输入 search.exclude ,true 属性表示查询不生效,false 表示查询生效。
在这里插入图片描述
可以通过多选目录,然后复制相对路径:
在这里插入图片描述
通过 Alt + Shift 一次性操作多行
在这里插入图片描述
结尾的修改,通过 Alt + shift 然后鼠标拉倒最后可以选中所有行的末尾:
在这里插入图片描述
即可一次操作全部板卡的隐藏:
在这里插入图片描述
然后把我们需要的板卡改成 false 即可:
在这里插入图片描述
由于 stm32 目录下还有不同芯片的板卡,上面方式如法炮制即可
这时候再进行查找就不会冒出一大堆没用的信息了:
在这里插入图片描述

总结

本篇的仓库位于 gitee 仓库
每个步骤都标识成一个标签了。
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
RT-Thread Studio是一款基于Eclipse的RT-Thread开发环境,它提供了一整套的开发工具,包括代码编辑器、编译器、调试器等,用于开发实时操作系统(RTOS)上的嵌入式软件。使用RT-Thread Studio,开发者可以更高效地进行实时系统的开发和调试。以下是关于RT-Thread Studio使用的一些主要特点和介绍: 1. 集成开发环境(IDE):RT-Thread Studio提供了直观的图形界面,使开发者能够轻松地创建、编辑、编译和调试RT-Thread应用程序。 2. 代码编辑器:RT-Thread Studio的代码编辑器支持多种语言,包括C/C++,开发者可以在其中编写和编辑代码。 3. 编译器:RT-Thread Studio集成了RT-Thread的编译器,可以将编写好的代码编译成可在嵌入式设备上运行的二进制文件。 4. 调试器:RT-Thread Studio提供了强大的调试工具,允许开发者在嵌入式设备上实时观察和修改代码的运行状态,以便进行调试和优化。 5. 集成工具链:RT-Thread Studio集成了RT-Thread的开发工具链,包括交叉编译工具、下载工具、性能分析工具等,方便开发者进行整个开发流程。 6. 代码版本管理:RT-Thread Studio支持代码版本管理,如Git,方便团队进行协作开发和版本控制。 7. 实时更新和文档:RT-Thread Studio提供了实时更新的RT-Thread版本和相关文档,方便开发者获取最新的功能和信息。 8. 集成仿真器:RT-Thread Studio支持多种仿真器,如QEMU、STM32CubeMX等,方便开发者在开发过程中进行模拟和调试。 使用RT-Thread Studio进行实时系统开发的一般步骤如下: 1. 安装和配置RT-Thread Studio:根据官方文档或教程,安装并配置RT-Thread Studio环境。 2. 创建新项目:使用RT-Thread Studio创建新的实时系统项目。 3. 编写代码:在代码编辑器中编写C/C++代码,实现所需的功能。 4. 编译代码:使用RT-Thread编译器将代码编译成可在嵌入式设备上运行的二进制文件。 5. 下载和部署:使用RT-Thread Studio提供的下载工具将二进制文件部署到嵌入式设备上。 6. 调试和优化:使用RT-Thread Studio的调试工具进行实时调试和性能优化。 7. 测试和发布:对部署到嵌入式设备上的软件进行测试,确保功能正常,然后进行发布。 总的来说,使用RT-Thread Studio进行实时系统开发可以提高开发效率,简化开发流程,并有助于提高软件的质量和性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值