乐趣区

关于开发工具:RTThread学习笔记-1RTThread开发环境搭建

对于学习嵌入式实时操作系统,首先第一步要进行的是搭建好对应的开发环境,只有对应的环境搭建好了,能力进行下一步的开发工作。

RT-Thread 为了不便宽广开发者进行入门或者深刻应用,其官网提供了非常丰盛的参考文档,官网的文档核心链接:https://www.rt-thread.org/document/site/

RT-Thread 的文档核心提供了入门学习,进阶学习,利用开发这三个档次的文档,开发者能够依据本人的理论状况进行抉择。然而,对于一些没有根底的入门级开发者,面对如此简单繁多的文档,难免会不晓得如何下手,不晓得先看哪一篇文档比拟好。

在上完 Sean 老师的课程后,我进行了一些对于搭建开发环境的总结,次要是对于 ENV 配置工具和 BSP 包的应用。

在开发环境搭建之前,要先下载好 ENV 配置工具和 RT-Thread 相干源码,ENV 配置工具的下载链接,如下:https://www.rt-thread.org/page/download.html

留神:在装置 ENV 工具之前,须要确保电脑曾经正确装置了 Git 管理工具并配置到零碎的环境变量当中,Git 管理工具能够从以下链接进行下载:https://git-scm.com/downloads,具体装置形式可自行上网查问。

ENV 工具的装置门路不能蕴含中文和空格,应该应用全英文门路。

RT-Thread 的相干源码,下载链接:https://gitee.com/rtthread/rt-thread?_from=gitee_search

下载实现后,解压进去的文件夹如下图所示。

对于 ENV 工具的应用

ENV 是 RT-Thread 提供的一个辅助开发工具,应用 ENV 能够很不便地构建出 RT-Thread 的工程项目。ENV 提供了 IAR、MDK、GCC 工程的构建,集成了 menuconfig 配置裁剪工具,软件包治理性能,等等。

其中,menuconfig 管理工具,沿用的是 Linux kernel 的 Kconfig 机制,当 RT-Thread 内核须要减少或缩小某个性能时,能够应用 menuconfig 不便地进行配置,而不必从源码端一步步进行移植,提供了开发者的开发效率。

对于 ENV 工具的应用办法,能够参考 RT-Thread 的官网文档外面对于 ENV 的章节,有具体的介绍。https://www.rt-thread.org/document/site/programming-manual/env/env/#

对于 BSP 包的应用

RT-Thread 针对不同的芯片平台,提供了一些曾经构建好的 BSP(Board Support Package)板级反对包,开发者能够间接应用这些 BSP 包进行扩大开发,目前 RT-Thread 提供的 BSP 包如下图所示。

因为介子开发板应用的主控芯片是 AT32F407,所以,开发板是能够基于 at32 这个 BSP 包进行开发的。进入 bsp/at32/at32f407-start 目录,能够看到 BSP 包的次要形成包含:工程模板,通过 scons 构建的工程,rtconfig.py 构建脚本,等等,如下图所示。

在装置和配置好 ENV 工具后,在 at32f407-start 目录外面,右键关上 ENV 工具命令行终端,如下图所示。

RT-Thread 是应用 scons 命令来进行工程构建的,如果是应用 IAR 或 MDK 来进行工程开发,能够应用以下命令构建对应的工程。构建 IAR 工程:scons –target=iar。构建 MDK 工程:scons –target=mdk5 或 scons –target=mdk4

menuconfig 是一种图形化配置工具,,开发者能够应用 menuconfig 工具对 RT-Thread 内核进行配置和裁剪,对于 menuconfig 的快捷键介绍,如下图所示。

留神,每次应用 menuconfig 对 BSP 进行配置后,都须要应用 scons 命令对相应的工程进行从新生成,以便配置能失效。

仔细的开发者会发现,对于 at32f407 开发板,其 BSP 包外面的工程,须要依赖整个 RT-Thread 源码能力被正确编译,然而整个 RT-Thread 源码外面又蕴含了其余跟 AT32 不相干的 BSP 包,这样会导致整个工程很宏大和臃肿。

为了让 BSP 包生成跟 AT32 芯片相干的工程项目,移除其余不相干的芯片 BSP 包,能够应用以下命令:scons –dist,命令执行后,会在 BSP 包目录外面生成 dist 目录,这个目录外面蕴含了整个 AT32 的工程,能够把这个工程复制到任何目录下应用,如下图所示。

要应用一个 BSP 包进行开发,个别会通过以下步骤:
1. 应用 menuconfig 命令,对 RT-Thread 的内核和组件进行配置。
2. 配置实现后,依据本人的编译器状况,应用 scons –target=xxx 生成对应的工程。
3. 关上对应的工程,即可进行代码编写开发。
4. 能够应用 scons –dist 命令,移除不相干的芯片,把工程独自抽离进去。

艰深地总结一下,ENV 是一个工具包,这个工具包外面集成了一些命令,咱们只须要在 ENV 的命令行窗口输出指定的命令就能够进行对应的操作。

menuconfig 是工具包外面其中一个命令,这个命令能够调用一个图形化配置界面,能够让开发者不便地对 RT-Thread 内核进行配置和批改。

scons 也是工具包外面其中个一个命令,这个命令是用来构建咱们罕用的 IAR 或 MDK 工程的,应用 scons 命令,就能够很不便地生成 IAR 或 MDK 工程,这样就不必手动地往工程外面增加源文件和头文件。

退出移动版