IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> STM32F103系列移植rtthread3.1.3完整版详细过程 -> 正文阅读

[嵌入式]STM32F103系列移植rtthread3.1.3完整版详细过程

这段时间在学习rtthread,在移植的过程中遇到挺多问题,现在对移植3.1.3版本做一个移植记录


本人申明,整个文章过程都是本人亲自走过一边,有不懂的地方可以私信,感谢支持


移植前准备:Keil5、STM32CubeMX、ENV工具


1、获取源码

源码获取的渠道主要是从官方提供的链接下载,主要渠道有码云、GitHub、百度云等
下载链接:下载 - RT-Thread物联网操作系统
选择源代码下载,在以下链接中下载rtthread3.1.3版本


2、复制模板

本文主要使用STM32系列的stm32cbt6进行rtthread移植,进入下载好的源码文件夹,打开以下路径 rt-thread\bsp\stm32\libraries\templates
选择stm32f10x文件夹复制到rt-thread\bsp\stm32路径下


3、搭建工程

3.1 STM32CubeMX配置

打开复制的模板下的board\CubeMX_Config路径下找到CubeMX_Config.ico文件,使用STM32CubeMX打开对工程项目进行配置

首先我们需要选择自己开发板所对应的芯片,我使用的是STM32F103CBT6,于是选择对应的芯片

接下来就是对需要的引脚进行选择配置,最基本的需要时钟、串口以及打开SWD下载模式

然后便是时钟配置,我们直接在HCLK时钟处填写最大时钟就行了,系统将自动配置

第三步就是项目工程配置

工程配置中其他的应该都没有问题,但是我们使用的STM32 hal库需要是1.7.0版本的,不能使用最新的版本,否则finsh组件没法启用,版本更改的办法如下:

下载好1.7.0版本以后就可以在库的选择中看到1.7.0版本了。
最后点击生成代码覆盖原有的工程就好了。

3.2 Board文件修改

接下来的修改复制于官方文档

3.2.1修改board.c

在 board.c 文件中存放了函数 SystemClock_Config(),该函数负责初始化系统时钟。当使用 CubeMX 工具对系统时钟重新配置的时候,需要更新这个函数。
该函数由 CubeMX 工具生成,默认存放在board/CubeMX_Config/Src/main.c 文件中。但是该文件并没有被包含到我们的工程中,因此需要将这个函数从 main.c 中拷贝到 board.c 文件中。在整个 BSP 的制作过程中,这个函数是唯一要要拷贝的函数。

3.2.2修改board.h
3.2.3修改 Kconfig 选项
3.2.4修改链接脚本

使用MDK只需要修改link.sct即可

3.2.5修改构建脚本SConscripy
3.2.6修改工程模板

主要修改芯片信息即可,后续的下载方式以及编译关联可以在项目工程中临时更改。

3.3 ENV重新生成工程

打开ENV,进入到工程文件夹下,输入命令 menuconfig 对工程进行配置,并生成新的 rtconfig.h 文件。如下图所示:

确定串口打开以后就可以按ESC退出,系统会提示是否保存,确定即可
再使用 env 工具输入命令 scons --target=mdk5重新生成工程,出现以下提示即成功生成

随后可以打开工程项目,编译程序,可能会出现以下问题:

提示stm32f1xx_hal_exti.h不存在,我们双击报错文件夹名即可定位到代码处,注释掉这段代码即可:

将程序下载至芯片中,连接串口就可以看到以下界面:

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-08-19 12:12:44  更:2021-08-19 12:13:58 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/20 23:36:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码