手把手教 stm32f407 基于rtthread操作系统使用Arduino兼容层RTduino

一、RTduino

RTduino是RT-Thread实时操作系统的Arduino生态兼容层,为RT-Thread社区的子社区,旨在兼容Arduino社区生态来丰富RT-Thread社区软件包生态(如上千种分门别类的Arduino库,以及Arduino社区优秀的开源项目),并降低RT-Thread操作系统以及与RT-Thread适配的芯片的学习门槛。通过RTduino,可以让用户使用Arduino的函数、编程方法,轻松地将RT-Thread和BSP使用起来。用户也可以直接使用Arduino社区第三方库(例如传感器驱动库、算法库等)直接用在RT-Thread工程中,极大地补充了RT-Thread社区生态。
在这里插入图片描述

在这里插入图片描述

RTduino 支持以下开发环境
1、GCC
2、VSCode
3、RT-Thread Studio
4、Keil MDK5
K5、eil MDK6
: RTduino作为RT-Thread软件包,其本身支持GCC工具链以及Keil AC5、AC6集成开发环境(IDE),但由于Arduino社区第三方库均为GCC工具链下编写,因此建议使用基于GCC工具链的开发环境。

适配RTduino的RT-Thread BSP
在这里插入图片描述
在这里插入图片描述

二、基于 STM32F407 芯片 建立工程

基于芯片创建工程,RT-Thread 内核是 4.1.1
在这里插入图片描述

选择工程的 RT-Thread Settings
在这里插入图片描述

在这里插入图片描述
选择,并保存。
在这里插入图片描述
等待下载完成,如下:
在这里插入图片描述

增加头文件,可参考 rt-thread 源码 版本 v5.1.0 中的 星火一号(stm32f407-rt-spark)
在这里插入图片描述
将以下文件复制到工程中。
在这里插入图片描述
复制后,工程 applications 文件夹如下:
在这里插入图片描述

编译,发现报错,提示

../packages/RTduino-latest/core/HardwareSerial.h:21:10: fatal error: pins_arduino.h: No such file or directory

在这里插入图片描述
头文件路径:
在这里插入图片描述

添加头文件路径,添加 c和c++ 的头文件路径。
在这里插入图片描述
在这里插入图片描述
编译,发现还是报错,提示如下:

../applications/arduino_pinout/pins_arduino.c:13:10: fatal error: drv_gpio.h: No such file or directory

在这里插入图片描述
将#include <drv_gpio.h> 改为 #include <drv_common.h> 即可

#include <drv_gpio.h>
改为
#include <drv_common.h>

在这里插入图片描述

重新编译,正常通过。
在这里插入图片描述

三、下载,测试

下载工具使用 FlyMcu。
下载地址:
http://www.mcuisp.com/chinese%20mcuisp%20web/ruanjianxiazai-chinese.htm
在这里插入图片描述
在这里插入图片描述

生成 hex 文件:

在这里插入图片描述

下载到开发板,运行结果如下:
在这里插入图片描述

参考:
https://docs.rtduino.com/#/zh/

https://gitee.com/rtduino/RTduino

https://github.com/RTduino/RTduino

https://www.bilibili.com/video/BV1yE421M7Ew/?spm_id_from=333.788&vd_source=f58225e38b5a8bc42ab3351918ec20e5

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值