博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RT-Thread 4.0 + STM32F407 学习笔记1
阅读量:5094 次
发布时间:2019-06-13

本文共 1348 字,大约阅读时间需要 4 分钟。

RT Thread 4.0提供了新的BSP框架

新 BSP 框架的主要特性如下:

  • 提供多系列 BSP 模板,大大降低新 BSP 的添加难度;

  • 每个 BSP 都配有齐全的驱动文件,开发者可以方便地使用所有驱动;

  • 开发者可以使用 CubeMX 工具对 BSP 进行图形化配置;

由于Hal库是以后主流,在使用STD库对STM32很熟悉后,建议转到Hal库

本文参考官方《STM32系列BSP制作教程》,由于官方提供的CubeMX与Hal库版本固定,不一定适用所有初步使用的人,本文使用自己的CubeMX制作BSP并强调注意事项。

其中一些解释如内容说明、Scons、Env等,详细参见《STM32系列BSP制作教程》

1. BSP 制作方法

BSP 的制作过程分为如下五个步骤:

  1. 复制通用模板

  2. 使用 CubeMX 工具配置工程

  3. 修改 BSP 中的 Kconfig 文件

  4. 修改构建工程相关文件

  5. 重新生成工程

1.1 复制通用模板

复制        rt-thread-4.0.0\bsp\stm32\libraries\templates\stm32f4xx

重命名为 rt-thread-4.0.0\bsp\stm32\stm32f407-pz6808l

1.2 使用CubeMX配置工程

本文使用的是CubeMX 5.2版本 

配置RCC使能外部晶振

 

使能调试

使能UART

时钟配置

工程管理,生成到BSP框架里的文件夹下

生成工程如下

1.3 HAL库替换

删除MDK-ARM文件夹

复制Drivers到 rt-thread-4.0.0\bsp\stm32\libraries 文件下并重命名为 STM32F4xx_HAL_502

从模板中复制SConscript文件

1.4文件修改

rt-thread-4.0.0\bsp\stm32\stm32f407-pz6808l\board\board.c

用生成的main.c中的 SystemClock_Config 进行替换

修改 board/Kconfig 文件

修改链接脚本

 

填写对应芯片的Flah和RAM大小,主要有些芯片有非连续RAM,填写RAM1大小即可

修改主工程目录下的

修改 SConstruct 链接自己的HAL库

修改 board 目录下的 SConscript

 

修改为需要制作BSP的芯片型号对应内容

注意 stm32f4xx_hal_msp.c 文件  查看是否包含有串口初始化 HAL_UART_MspInit ,没有则用MX重新生成,否则程序运行会出错(串口异常)

1.5 使用Env工具生成工程

打开模板 template.uvprojx ,对工程进行相关设置,这样以后每次文件的改动需要重新生成工程时,工程就不用再设置了;

在 env 界面输入命令 menuconfig 对工程进行配置,并生成新的 rtconfig.h 文件。

调试日志的配置,这样看到初始化时的一些信息

配置完save,然后输入命令 scons --target=mdk5 重新生成工程

keil打开project工程,编译无误,制作BSP成功。

 

转载于:https://www.cnblogs.com/silencehuan/p/10904048.html

你可能感兴趣的文章
客户端向服务端请求连接是出现"ssh : Connection refused"原因有哪些
查看>>
ResolveUrl的用法
查看>>
免费开源ERP成功案例分享:化学之家通过Odoo实现工业互联网转型
查看>>
[单选题]range('a', 'z')返回什么?
查看>>
python中super用法
查看>>
WCF 错误 给定关键字不在字典中
查看>>
JAVA中反射机制
查看>>
Python学习笔记(十)—— 高级特性
查看>>
Java基础之String,StringBuilder,StringBuffer
查看>>
SSH框架整合 spring struts2 hibernate
查看>>
测试Location对象的Hash属性
查看>>
Python之路,第十五篇:Python入门与基础15
查看>>
Linux内核态、用户态简介与IntelCPU特权级别--Ring0-3
查看>>
第23月第24天 git命令 .git-credentials git rm --cached git stash clear
查看>>
JavaScript学习总结
查看>>
Linux常用命令
查看>>
Spring Boot2.0 整合 Kafka
查看>>
GitHub开源:升讯威ADO.NET增强组件 sheng.ADO.NET.Plus V1.3
查看>>
在你自己的时区里,一切安排都准时!
查看>>
软件测试技术- 自动贩卖机-因果图&决策图
查看>>