Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
BSP
STM32
RTduino工程bsp建立方法步骤
发布于 2024-05-21 13:39:39 浏览:294
订阅该版
[tocm] # 准备工作 1、下载最新的[rt-thread](https://github.com/RT-Thread/rt-thread "rt-thread")源码工程。 2、下载[pinout-generator](https://github.com/RTduino/pinout-generator "pinout-generator")工具帮助我们快速生成引脚图代码。 3、安装cubemx工具。 4、如果有RT-thread开发经验并且可以制作RT-thread的BSP工程可以直接跳到第20步开始。 # 开始制作RTduino工程 1、到源码中如下位置找到想要使用的硬件对应的源代码 ![screenshot_066da434688dd916969baeb50b6fa94.png](https://oss-club.rt-thread.org/uploads/20240521/65581c561b3230d3e9ec3741ee940c20.png) 2、将其复制到如下位置并更改工程名称为stm32f103C8T6-TEST-RTduino ![screenshot_35c470a542981440552a5f428feb5d4.png](https://oss-club.rt-thread.org/uploads/20240521/edcac80c9afd1a38a7b793b6e6ded41d.png.webp) 3、打开模版工程 ![screenshot_c267aff2f003c04b506701475120880.png](https://oss-club.rt-thread.org/uploads/20240521/8e7fc5b6654e3c64f9e188624a108873.png) 4、更改芯片型号为STM32F103C8T6 ![screenshot_b64a5f377ecd6b065f953d6976c9179.png](https://oss-club.rt-thread.org/uploads/20240521/c23f6bbef5846615911aa47dd8b8be8b.png) 5、打开工程中的cubemx工程 ![screenshot_f6119c7bd60971714f773d7cea0be1a.png](https://oss-club.rt-thread.org/uploads/20240521/680e01b264fdea97a00448626b46f397.png) 6、更改cubemx工程中的芯片为STM32F103C8T6 ![screenshot_8c92520f87c33a6b0f87b265a6d34e4.png](https://oss-club.rt-thread.org/uploads/20240521/a13d3a2a28949d996e7cea7f7c1e392a.png.webp) 7、开启SWD下载,否则无法通过仿真器链接设备 ![screenshot_5bdd69ae37e09fa90c8a9c5b6334cb7.png](https://oss-club.rt-thread.org/uploads/20240521/b546044e353d5b9f88d19df587370705.png.webp) 8、保存工程 ![screenshot_8a37b88149fb02f29721e0593b8ee30.png](https://oss-club.rt-thread.org/uploads/20240521/5ccdb91de0766090ef53cc86d29014f6.png.webp) 9、将工程中的inc和src文件复制出来 ![screenshot_ccd2fa4b0d21d926bf157f4b01fdc21.png](https://oss-club.rt-thread.org/uploads/20240521/2550bb48dada0c2c13fbb829fb69ae9b.png) 10、粘贴到如下位置 ![screenshot_0ec57a5b59fb60492d14d637f1f073b.png](https://oss-club.rt-thread.org/uploads/20240521/cce77cad9e75b9c2c929e8c481706af6.png) 11、将main.c文件中的时钟配置程序复制。 ![screenshot_7f78837e457f75a4b068310be328400.png](https://oss-club.rt-thread.org/uploads/20240521/0dbe7ee18ac7c98088ee8f1056e3e98c.png) 12、粘贴到如下所示的board.c中 ![screenshot_31a3857cd030d1af223faf8f31140d5.png](https://oss-club.rt-thread.org/uploads/20240521/848e29df46df9c94d98265618327a3a3.png) 13、确认board.h文件中的配置是否正确 ![screenshot_656ca67a72fa63d7424da48a7e1e9f0.png](https://oss-club.rt-thread.org/uploads/20240521/127b754eca0067fd7e39c4916ed41b93.png) 14、确认link.sct文件中的位置是否正确 ![screenshot_c15cb7dc3b4064d2703f286f108dd29.png](https://oss-club.rt-thread.org/uploads/20240521/d157dd184f480db13cd809f78cd72c6c.png) 15、确认board文件夹中的Kconfig是否正确 ![screenshot_ba993cea1bd3b2ba49ce73d00e8c733.png](https://oss-club.rt-thread.org/uploads/20240521/1a40db6c09d9794eff4e093bf38406f0.png) 16、确认board文件夹中的SConscript是否正确 ![screenshot_6cc475f546fd14bfe18d6c6e9b8b38b.png](https://oss-club.rt-thread.org/uploads/20240521/825f7586db81c72b8a6fa9336b3ec7f9.png) 17、在ENV工具中开启UART1为控制台输出口,打印程序信息 ![screenshot_f6fc59a1330e66a6df0fdb9f3557267.png](https://oss-club.rt-thread.org/uploads/20240521/5c75e1b61c814c813f04e9280c897ffa.png) 18、硬件上开启uart1 ![screenshot_3ceb13edcb3042448e17cc604e3d8d3.png](https://oss-club.rt-thread.org/uploads/20240521/33398d4e5b33c0eec7820266ed708d77.png) 19、退出后编译程序(以上步骤为制作简单的BSP的过程,可在官网教程中看到)此时的BSP工程中没有关于RTduino的程序。 ![screenshot_bd9d4880d30a524ad72fc69637ca9aa.png](https://oss-club.rt-thread.org/uploads/20240521/799121db6e64b5400e5b391f142e24f6.png) 20、打开下载并安装的pinout-generator程序,更改如下位置并保存,保存,保存重要的事说三遍。 ![screenshot_be57c760ad30c49b38708986f11bde4.png](https://oss-club.rt-thread.org/uploads/20240521/f229c86b287a690a5b0d6617b332a1eb.png.webp) 21、打开引脚配置在空白处右键->添加引脚。 ![screenshot_b8ee804b125a6c68aba5641d72b4023.png](https://oss-club.rt-thread.org/uploads/20240521/c913d905f7dc6e54a93bd2233ea32284.png.webp) 22、我是参考的工程rt-thread-master\bsp\stm32\stm32f103-blue-pill配置的引脚。当然在制作时可以根据实际使用芯片先规划好引脚。 ![screenshot_aa99760818c8947add3ebd5f4cc8b10.png](https://oss-club.rt-thread.org/uploads/20240521/2c5b119cd8ae3b14c85a253bcdb1944f.png) 23、在功能设置中开启如下所示位置功能,因为STM32F103C8T6最小系统板是用的PC13引脚链接的LED灯。点击生成工程。 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240521/01d500e4c68fe7dedf225ff795681139.png) 24、此时如下文件夹会多出很多文件 ![screenshot_d25f3b14822d94736b72ce62a7faba8.png](https://oss-club.rt-thread.org/uploads/20240521/bd92c0c9500d2cd217bffa360a875b41.png) 25、打开Kconfig.demo文件检查是否需要更改,我的是缺少两个串口的信息,按照串口1的形式再添加串口2和串口3. ![screenshot_d4c651e0823fd221d557af790aaee6e.png](https://oss-club.rt-thread.org/uploads/20240521/db709a505907912144ee717377ce967a.png) 26、更改完成后 ![screenshot_af079160098debf3dfb12b64acda780.png](https://oss-club.rt-thread.org/uploads/20240521/85b568c2ea3006e39fc0b9e8299a5787.png) 27、将上面文件中的内容复制到如下位置Kconfig文件中的对用位置 ![screenshot_839b5a48cc492effb4482b93b882929.png](https://oss-club.rt-thread.org/uploads/20240521/602f72044a81de8b5c5f07fc9445cda8.png) 28、更改完成后的Kconfig文件 ![screenshot_21cde7e389870555cc43f9222dca734.png](https://oss-club.rt-thread.org/uploads/20240521/d56643c125a7115f8515b9910072e3ff.png) 29、在ENV工具中使用menuconfig开启RTduino选项。 ![screenshot_9b179aab8010c559ce8c0fab16a4a58.png](https://oss-club.rt-thread.org/uploads/20240521/322061728816186c8e00fa66107ff259.png) 30、打开工程后会发现多出了几个关于RTduino的文件 ![screenshot_27ad8a4163d95f87632c215134e6f58.png](https://oss-club.rt-thread.org/uploads/20240521/e2bfc1cea1fa77bbcd47b6e89012dacc.png) 31、编译工程会出现如下错误(这个个人觉得可以更改一下那个工具避免这个问题) ![screenshot_c93b951e7eb4ac81488c1aee0e36131.png](https://oss-club.rt-thread.org/uploads/20240521/f4688e1adb76b3e914bda4a64b9404f3.png) 32、添加头文件#include
编译OK ![screenshot_f3cbf4148f8cbbe84abde365ff4f223.png](https://oss-club.rt-thread.org/uploads/20240521/78a34f5e7ced75391641ba215c25e32a.png) 33、下载并运行程序可以愉快的玩耍了。 ![screenshot_dc99a40e9bcc707efd669ea767b2551.png](https://oss-club.rt-thread.org/uploads/20240521/cff77ba98d4bd3963e0fce6924d82d8e.png)
0
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
aeniac
这家伙很懒,什么也没写!
文章
6
回答
42
被采纳
1
关注TA
发私信
相关文章
1
STM32 407 串口接收数据 系统卡死
2
RTT nrf24l01 设备驱动程序
3
stm32f10x串口只能发送数据,无法接收
4
第一次尝试移植rt-thread 到stm32F103系列问题
5
有人把stm32L07xx的bsp移到rtt上来了吗?求一个
6
rt-thread线程调度异常在stm32f103芯片上
7
RTT是否支持STM32F429
8
请问谁有 STM32F40x HAL + RT-THREAD 模板
9
rt-thread在stm32f411下的移植问题
10
针对STM32F7系列平台的MPU,Cache特性,需要注意哪些问题?
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
WIZnet_W5500
UART
ota在线升级
PWM
cubemx
freemodbus
flash
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
Debug
编译报错
msh
SFUD
keil_MDK
rt_mq_消息队列_msg_queue
ulog
C++_cpp
at_device
本月问答贡献
踩姑娘的小蘑菇
7
个答案
3
次被采纳
a1012112796
13
个答案
2
次被采纳
张世争
9
个答案
2
次被采纳
rv666
5
个答案
2
次被采纳
用户名由3_15位
11
个答案
1
次被采纳
本月文章贡献
程序员阿伟
9
篇文章
2
次点赞
hhart
3
篇文章
4
次点赞
大龄码农
1
篇文章
5
次点赞
ThinkCode
1
篇文章
1
次点赞
Betrayer
1
篇文章
1
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部