RT-Thread Studio使用经验——项目创建及文件介绍

本文介绍了如何在RT-ThreadStudio中创建RTThread和RTThreadNano项目,以及项目中各文件夹的作用,如RT-ThreadSettings用于配置软件包,CubeMXSettings涉及STM32芯片配置,drivers包含板级驱动,应用程序区用于编写用户代码,而rtconfig.h用于全局配置宏定义。
摘要由CSDN通过智能技术生成

一、RT-Thread Studio创建项目

1.创建项目时会有两种选择RT Thread项目RT Thread Nano项目,RT Thread项目体量比较大,包含了RT Thread的大部分功能,比如应用层开发,驱动开发,图形界面开发等,生成程序的大小大约在50kb左右;
RT Thread Nano属于轻量级的RT Pthread工程开发,只包含了基础的裸机开发的部分库文件,生成程序体量也小,大小大约在20kb左右。

2.在创建项目时会出现选择芯片开发或者开发板开发,其中开发板开发只包含了部分开发板的文件,比如正点原子厂商的开发板只有战舰V3和Nano两种版型,对应的芯片分别是STM32F10ZET6STM32F103RBT6。芯片开发会有更多的选择,
也更加灵活,两者的区别主要在部分文件的缺省和改变,不过在开发中问题不大。

3.生成的芯片项目会被特别使用HSI外部低速时钟,但可以在drv_clk.c中进行更改。

二、工程文件介绍

1.RT-Thread Settings

RT-Thread Settings

这是Studio为了方便开发而提供的工具合集,可以快速配置一些软件包,例如IOT软件包,也可以快速配置图形界面。
因为在裸机开发时不需要,所以在轻量化的Nano版本里时无法使用上述的这些功能。

2.CubeMX Settings

CubeMX是意法半导体(ST)公司的产品,RT-Thread Studio同时也支持使用CubeMX对STM系列( 只限于STM系列)芯片引脚进行配置,也可以将配置的初始化代码加载到源代码中。

CubeMX在使用过后会生成一个/cubemx/cubemx.ioc的文件,这就是CubeMX对于该项目生成的可视化配置文件,可以重复配置,重复加载代码。不过需要注意的是,CubeMX在生成代码时,会生成大量文件,其中有一个文件叫做stm32fxx_hal_conf.h,这个文件在最初的工程中也有,不过在driver文件夹中,他会在代码生成时被重命名,更正为stm32fxx_hal_conf_bak.h。在文件编译时只关注最新的stm32fxx_hal_conf.h,也就是在cubemx文件夹下的文件。

生成时同时也会出现别的文件,例如main.c,但是编译时并没有产生影响,但建议删除。

生成文件时不要选择 将加载代码分为 *.c*.h 文件。

配置初始化是要将USART1的引脚配置出来,否则会编译错误,原因是USART1的相关代码未被定义。

3.二进制

这个文件夹顾名思义,其中只存放二进制的文件,并且特指rtthread.elf文件,该文件是builid整个项目是生成的,也是DeBug和烧录的对象文件。

4.includes

includes文件夹,实际上并不存在这样一个文件,属于一种映射,映射到对应的文件,本质上是一些工程生成时编译配置头文件路径。

5.applications

applications这个文件夹下面存放的主要就是main函数所在的路径和用户需要编写的应用层程序文件。

这也是在工程中主要编写程序的工作区,可以自己添加和修改文件。

6.drivers

BSP板级驱动所在的文件夹。不同的平台所需要的底层驱动也是不一样的,简单来说就是不同的芯片对应的GPIO、I2C等外设的配置和驱动有所不同,所以drivers文件的内容并不是通用的。

其中就有stm32f1xx_hal_conf.h这个头文件,主要作用可以看上文CubeMX Settings。

Nano版本的drivers文件并不全面,因为考虑轻量,所以只保留了基本的USART1通信,所以需要手动去通过CubeMX去配置。

7.debug

debug文件夹中的文件主要是是经过编译之后的obj文件和调试相关文件,其中就包括rtthread.elf

8.libraries

这个文件夹中存放的是对应芯片的固件库,例如STM32的HAL库文件。

9.linkscript

这个文件夹下一般只有一个文件link.lds,这个文件的主要功能是对芯片内部的存储资源进行设置,主要分为ROM和RAM。不同的芯片ROM和RAM可能不同,但一般情况下在创建项目的同时会选择芯片,一般系统会自动选择对应芯片ROM和RAM大小。

10.rt-thread

这是RT Thread的内核文件,其中有以下子目录:

-components

RT Thread的各组件生成的文件,可以在上述的RT-Thread Settings中设置添加组件,该文件夹中就会生成对应文件,比如WLAN组件,I2C组件等对应的文件。

- -drivers

主要存放RT Thread的驱动框架,像serial这些常用组件都在这个文件夹里。

- -finsh

主要存放finsh工具的组件文件

-include

主要存放RT Thread的内核头文件。

-scr

主要存放RT Thread的内核C文件。

-libcpu

主要存放的是芯片移植文件,例如STM32就移植了ARM Cortex-M3的移植源码。

11.rtconfig.h

这不是一个文件夹,这个头文件主要是对全局资源进行宏定义的,可以直接手动添加宏,也可以通过RT-Thread Settings添加组件来自动添加宏。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值