一、前言
本文研究如何使用RT_Thread开发STM32F411RE_NUCLEO,完成开发环境搭建工作。
二、 简介
1.RT_Thread简介
RT-Thread是一个集实时操作系统(RTOS)内核、中间件组件和开发者社区于一体的技术平台,由熊谱翔先生带领并集合开源社区力量开发而成,RT-Thread也是一个组件完整丰富、高度可伸缩、简易开发、超低功耗、高安全性的物联网操作系统。RT-Thread具备一个IoT OS平台所需的所有关键组件,例如GUI、网络协议栈、安全传输、低功耗组件等等。经过11年的累积发展,RT-Thread已经拥有一个国内最大的嵌入式开源社区,同时被广泛应用于能源、车载、医疗、消费电子等多个行业,累积装机量超过2亿台,成为国人自主开发、国内最成熟稳定和装机量最大的开源RTOS。
2.STM32F411RE简介
STM32F411-Nucleo-64 是意法半导体推出的一款基于 ARM Cortex-M4 内核的开发板,最高主频为 100Mhz,该开发板具有丰富的板载资源,可以充分发挥 STM32F411RE 的芯片性能。
MCU:STM32F407ZGT6, 主频 100MHz, 512KB FLASH , 128KB RAM。
常用外设:
LED: 3 个,USB (LD1), user LED (LD2),power LED (LD3) 。
按键,2 个,USER and RESET 。
常用接口:USB 支持 3 种不同接口:虚拟 COM 端口、大容量存储和调试端口。
调试接口,板载 ST-LINK/V2-1 调试器。
开发板更多详细信息请参考ST官网(https://www.st.com/en/evaluation-tools/nucleo-f411re.html)。
三、开发环境搭建
1.准备工作
(1)电脑:支持GCC开发环境
(2)SDK: github地址(https://github.com/RT-Thread/rt-thread)
(3)GCC工具链:https://pan.baidu.com/s/1cg28rk#list/path=%2F
(4)STM32F411RE开发板
2.GCC环境搭建
gcc环境有三种,一种是在linux环境下搭建,其二是windows下基于esplise ID开发,其三是windows下使用VSCode进行开发,本文使用windows下VSCode进行开发,主要原因在于VSCode比较轻量,界面简洁。
(1)VSCode安装
具体安装方法可以参考RT_Thread官网文档中心应用开发/开发环境搭建/使用VSCode开发RT_Thread,地址如下:
https://www.rt-thread.org/document/site/application-note/setup/qemu/vscode/an0021-qemu-vscode/
(2)编译
编译使用Env工具进行编译,因为gcc编译链使用的是env中自带的arm-none-eabi,因此需要在Env控制台中输入scons编译。
控制台进入\bsp\stm32\stm32f411-st-nucleo目录,输入scons即可进行编译,我这里编译结果如下:
.bin在bsp\stm32\stm32f411-st-nucleo路径下
四、运行
1.下载rtthread.bin
STM32 NUCLEO的下载方式比较简单,直接USB连接到电脑,电脑上面会虚拟出来一个U盘,将固件拖进去,重新上电即可。
2.运行
除了查看设备运行日志外,设备log可以用来调试系统,查看系统运行状态,输入help,打印支持的命令,也可以自行定义调试命令。
五、结语
1.总结:
本节完,实际操作过程中需要注意的地方有如下几点:
(1) 需要熟悉ENV工具
ENV工具用来编译程序,用户输入scons后,会触发python程序调用gcc编译器编译程序,scons更多应用请自行百度。
(2) STM32下载
NUCLEO通过USB查到电脑,电脑会虚拟出一个U盘,原理是NUCLEO上面的stm32f103会虚拟出一个U盘,检测到用户放置bin文件后,将固件烧录给STM32F411RE
2.后记:
如您在使用过程中有任何问题,请加QQ群进一步交流,也可以github提Issue。
QQ交流群:906015840 (备注:物联网项目交流)
github仓库地址:https://github.com/solitary-sand/rt_thread
一叶孤沙出品:一沙一世界,一叶一菩提