RT-Thread Env工具的使用方法

引言

RT-Thread Env工具包括配置器包管理器,用来对内核和组件的功能进行配置,对组件进行自由裁剪,对线上软件包进行管理,使得系统以搭积木的方式进行构建,简单方便。

RT-Thread Env工具的使用方法_第1张图片


简单的解释一下,从RT-Thread的软件结构来看,整个系统包含了丰富的功能,从底层与硬件密切相关的各种驱动,比如CAN/SPI/IIC/DMA/USB等等的驱动。到基于RT-Thread核心基础上的外围组件,例如文件系统,命令行shell接口,lwIP轻型TCP/IP协议栈,GUI图形引擎等。整体的功能非常完善、非常强大,而且还在不断地完善和丰富。
而且我们可以根据自己的需求进行裁剪和拼组。但是对于一个RTT初学者来说,如何能够快速地把RT-Thread移植到自己的项目工程中,最好各种Device和Component刚好切换自己的应用需求。要实现起来还不是很容易的。比如我们会遇到如下这些问题:

  1. 如何修改配置文件,再通过scons生成我们所需要的功能

    • 首先不知具体的选项具体的含义,需要查阅相关资料
    • 不确定修改参数的范围,也需要查资料
    • 修改相关配置还需要考虑相应的依赖关系
  2. 如何使用和维护RTT新增的通用开源库

    • 首先需要了解开源库的功能和软件框架
    • 需要增加编译选项
    • 需要移植到RTT当中

为此RT-Thread官方在2017推出RTT3.0操作系统的同时也推出一个简单易用的工具,RT-Thread Env. 通过这个工具的几个简单工具就能解决以上所有问题。

  • Kconfig 对内核和组件的功能进行配置,对组件进行自由裁剪
  • Packages 对线上软件包进行管理

通过以下命令进行操作:

进入env,启动工具 console_64.exe
打开rt-thread源码包,找到bsp中自己想使用的MCU, 复制其相应的路径,比如
C:\Users\Desktop\RTT\rt-thread-master\bsp\stm32f10x

使用命令menuconfig进入Kconfig的配置,在这里我们可以选择自己想要的组件,自定义裁剪。
RT-Thread Env工具的使用方法_第2张图片

大家使用menuconfig命令时可能会遇到问题,无法进入到这个配置菜单,可以尝试一下两种办法:

  1. 关闭console_64.exe, 打开console_64.bat重新试试menuconfig命令
  2. 是不是你所选的bsp下的MUC文件夹中没有Kconfig文件,或者文件内容不匹配(比如我使用的stm32f10x文件夹内就没有Kconfig文件,我是从其他文件夹内复制,并修改的)
mainmenu "RT-Thread Configuration"

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

config $RTT_DIR
    string
    option env="RTT_ROOT"
    default "../.."

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

source "$RTT_DIR/Kconfig"
source "$PKGS_DIR/Kconfig"

config SOC_STM32F10X
    bool 
    select ARCH_ARM_CORTEX_M3
    default y

config RT_USING_UART
    bool "Using RT_USING_UART"
    default y

if RT_USING_UART
config RT_USING_UART1
    bool "Using RT_USING_UART1"
    default y      
endif

//根据自己选择的MCU型号选择 相应的架构(SOC_STM32F10X ARCH_ARM_CORTEX_M3)

menuconfig配置完之后,按esc退出,然后使用 pkgs   –update命令,更新软件和管理软件包
最后使用 scons   –target=mdk5生成MDK5的工程


RT-Thread Env工具的使用方法_第3张图片


这样我们就使用env帮我们生成了一个我们想要的基于RTT操作系统的软件工程了,下面我们就可以根据需求来填充相应的代码了。

下载
RT-Thread Env

RT-Thread3.0

RT-Thread官方release

你可能感兴趣的:(RT_Thread开源操作系统)