目录
前言
ENV能够根据自己的需求裁剪RT-Thread功能,相比RT-Thread Studio更加灵活,使用该工具也是RT-Thread今后的开发趋势
准备工作
需要预先准备的有ENV工具、cubemx和RTT的源码:
ENV官网下载:rt-thread.org/download.html#download-rt-thread-env-tool
RTT源码选择::Releases · RT-Thread/rt-thread (github.com)
本片文章以rtthread源码4.1.1,芯片以stm32f0系列举例。
注:其他系列的芯片和源码版本也是一样的操作流程。
准备工作检查:
1.安装完成ENV后,会在右键列表出现此项
2.cubemx
3.源码
源码选择
进入bsp选择芯片类型:
选择芯片系列:
情况1:如果你的板子是rtt支持学习板,可以直接选择对应的板子源码。
情况2:一般情况下,还是需要自己手动选择与自己芯片相对应的源码,那么着重介绍这种类型的操作方式,那么进入libraries,再进入templates,会出现各系列的源码,选择你需要的源码,我这里以stm32f0为例,其他系列的操作流程也是一样。
选中想要的系列源码,复制到图片路径下,我改名为stm3f0xx--demo。
复制到此处:
CubeMX配置所需芯片、开启引脚
注:要开启若想使用某个引脚必须在cubemx中先开启
选择芯片型号:
配置烧录模式:
配置时钟:
开启需要的功能引脚,我以开启usart1为例:
生成配置代码:
删除老文件,移出新文件到此目录下:
移出core的文件到此目录下,并删除选中的无用文件:
最终只需要留这几个文件:
配置RT-Thread时钟
复制生成的时钟覆盖掉RT-Thread时钟配置:
复制main.c的这个函数替换掉board.c中的同名函数:
修改link文件
根据芯片FLASH和SRAM大小更改link,我是64kflash和8k的ram
配置启动文件
配置启动文件:
配置功能显示在ENV中
参考stm32xx_board_Kconfig文件,开启或裁剪需要的功能代码:
复制需要的代码到此处的kconfig内部
若想要开启串口1,就添加:
若想开启串口2,就添加:
如此就可以举一反三,配置pwm、iic、spi等都可以参考stm32xx_board_Kconfig,并配置到自己的kconfig中。
mdk5配置
设置keil mdk5配置,打开template.uvprojx:
ENV配置
接着使用env配置:
1.在该文件目录下的空白处右键并选中:
2.输入menuconfig
3.进入图形化配置界面(回车键进入,空格键选中):
4.选中开启usart1,并保存配置:
5.回到该界面,输入scons --target=mdk5 构建mdk工程:
6.配置成功:
7.打开mdk5工程文件,编译且显示0 error,即为配置成功: