Files
rt-thread/bsp/stm32
ryancw ac8fba0129 [drivers][serial_v2]允许阻塞接收超过rx缓冲区大小的数据、增加超时时间、flush、获取缓冲区数据长度命令、数据溢出逻辑修复、稳定性细节优化、添加更多serial_v2测试用例
[components][serial_v2] 优化txflush逻辑、对tx的activated做中断保护

[components][at] at_client适配新版serial_v2

[components][at] at_server适配新版serial_v2

[components][serial_v2] 测试用例增加循环调用,format测试用例

[components][serial_v2] poll模式判断逻辑错误

[components][serial_v2] 测试用例去掉一些非必要延时

[components][serial_v2] 测试例程使用menuconfig进行配置,更新readme

[components][at_client] at_client_getchar返回值错误、at_client解析线程优先级错误设置

[components][at] 错误码应该返回负值

[components][serial_v2] TCFLSH和FIONREAD完善、control函数增加错误返回值

[components][serial_v2] RT_SERIAL_CTRL_GET_RX_DATA_LEN更改为RT_SERIAL_CTRL_GET_UNREAD_BYTES_COUNT

[utest][serial_v2] TC_UART_SEND_TIMES替换为RT_SERIAL_TC_SEND_ITERATIONS

[components][serial_v2] FIONREAD参数应该是无符号类型

[utest][serial_v2] 完善测试用例

[components][serial_v2] 避免使用三目运算符

[components][serial_v2] 使用clang-format格式化代码

[components][serial_v2] 添加get超时时间命令

[components][serial_v2] 完善posix接口

[components][serial_v2] 阻塞接口添加阻塞时间为0时的处理逻辑、优化RX阻塞接收逻辑

[components][serial_v2] 设置超时时间命令的参数改为指针形式

[components][serial_v2] nbuf发送添加超时时间为0时的逻辑

[components][serial_v2] 完善添加测试用例

[utest][serial_v2] 修复依赖关系

[components][serial_v2] 非阻塞模式下tx_flush错误修复

[components][serial_v2] activated使用原子API

[components][serial_v2] 优化DMA逻辑、没使能DMA时屏蔽DMA逻辑节约资源

[components][serial_v2] 提供写满时丢弃新数据和覆盖旧数据策略,写满丢弃策略效率更高

[components][serial_v2] 部分平台适配写满时两种策略功能

[components][serial_v2] DMA模式暂不支持丢弃新数据策略

[utest][serial_v2] 优化测试代码

[components][serial_v2] DMA模式下使用乒乓缓冲、DMA模式支持丢弃新数据策略

[utest][serial_v2] 适配DMA乒乓缓冲

[bsp][serial_v2] 部分bsp适配DMA下乒乓缓冲

[components][serial_v2] 使用spinlock替换中断,对部分结构体变量使用原子操作

[utest][serial_v2] 更新测试用例

[components][at] 适配new serialv2不再判断RTT版本号

[components][at] 删除多余的中文注释

[utest][serial_v2] 添加交叉echo示例,qemu环境下专用

[bsp][qemu] 适配串口v2并开启fifo

[components][at] 修复合并导致的错误

[bsp][n32] 适配serial_v2,没有经过测试

[components][serial_v2] 格式化代码

[utest][serial_v2] 删除无意义的打印
2025-05-16 09:42:11 +08:00
..
2025-04-30 18:30:50 +08:00

STM32 BSP 说明

STM32 系列 BSP 目前支持情况如下表所示:

BSP 文件夹名称 开发板名称
F0 系列
stm32f072-st-nucleo ST 官方 STM32F072-nucleo 开发板
stm32f091-st-nucleo ST 官方 STM32F091-nucleo 开发板
F1 系列
stm32f103-100ask-mini 百问网F103 Mini开发板
stm32f103-100ask-pro 百问网F103 Pro开发板
stm32f103-atk-nano 正点原子 F103 NANO 开发板
stm32f103-atk-warshipv3 正点原子 F103 战舰V3 开发板
stm32f103-blue-pill STM32F103C8T6蓝色最小系统板
stm32f103-dofly-lyc8 德飞莱 STM32F103 开发板
stm32f103-dofly-M3S 德飞莱 STM32F103 开发板
stm32f103-fire-arbitrary 野火 F103 霸道开发板
stm32f103-gizwits-gokitv21 GoKit V2.1开发板
stm32f103-hw100k-ibox 硬件十万个为什么 STM32F103 iBox 开发板
stm32f103-onenet-nbiot STM32F103 OneNET NB-IoT 开发板
stm32f103-yf-ufun STM32F103 yf-ufun 开发板
stm32f107-uc-eval uC/Eval STM32F107 评估板(中国版)
F2 系列
stm32f207-st-nucleo ST 官方 STM32F207-nucleo 开发板
F3 系列
stm32f302-st-nucleo ST 官方 STM32F302-nucleo 开发板
stm32f334-st-nucleo ST 官方 STM32F334-nucleo 开发板
F4 系列
stm32f407-rt-spark 睿赛德官方 F407 星火一号开发板
stm32f401-st-nucleo ST 官方 STM32F401 Nucleo-64 开发板
stm32f405-smdz-breadfruit 三木电子 SM1432F405 开发板
stm32f407-lckfb-skystar 立创开发板 天空星STM32F407开发板
stm32f407-atk-explorer 正点原子 F407 探索者开发板
stm32f407-robomaster-c 大疆公司 RoboMaster C型开发板
stm32f407-st-discovery ST 官方 STM32F407-discovery 开发板
stm32f410-st-nucleo ST 官方 STM32F410-Nucleo-64 开发板
stm32f411-atk-nano 正点原子 F411 NANO 开发板
stm32f411-st-nucleo ST 官方 STM32F411-Nucleo-64 开发板
stm32f411-weact-MiniF4 F401/F411最小系统开发板Black Pill
stm32f412-st-nucleo ST 官方 STM32F412-Nucleo-144 开发板
stm32f413-st-nucleo ST 官方 STM32F413-Nucleo-144 开发板
stm32f427-robomaster-a 大疆公司 RoboMaster A型开发板
stm32f429-armfly-v6 安富莱 F429-v6 开发板
stm32f429-atk-apollo 正点原子 F429 阿波罗开发板
stm32f429-fire-challenger 野火 F429 挑战者开发板
stm32f429-st-disco ST 官方 STM32F429-discovery 开发板
stm32f446-st-nucleo ST 官方 STM32F446-nucleo 开发板
stm32f469-st-disco ST 官方 STM32F469-discovery 开发板
stm32f407-fk407m2-zgt6 反客科技 FK407M2-ZGT6 开发板
F7 系列
stm32f746-st-disco ST 官方 STM32F746-discovery 开发板
stm32f767-atk-apollo 正点原子 F767 阿波罗开发板
stm32f767-fire-challenger-v1 野火 F767-V1 挑战者开发板
stm32f767-st-nucleo ST 官方 STM32F767-nucleo 开发板
stm32f769-st-disco ST 官方 STM32f769-discovery 开发板
G0 系列
stm32g070-st-nucleo ST 官方 STM32G070-nucleo 开发板
stm32g071-st-nucleo ST 官方 STM32G071-nucleo 开发板
G4 系列
stm32g431-st-nucleo ST 官方 STM32G431-nucleo 开发板
H7 系列
stm32h743-armfly-v7 安富莱 STM32H743 v7 开发板
stm32h743-atk-apollo 正点原子 h743 阿波罗开发板
stm32h743-openmv-h7plus OPENMV 官方 H7-PLUS 开发板
stm32h743-st-nucleo ST 官方 STM32H743-nucleo 开发板
stm32h747-st-discovery ST 官方 STM32H747I-discovery 开发板
stm32h750-armfly-h7-tool 安富莱 STM32H750 Tool 开发板
stm32h750-artpi RT-Thread 官方 STM32H750-artpi 开发板
stm32h750-fk750m1-vbt6 反客科技 FK750M1-VBT6 开发板
stm32h750-weact-ministm32h7xx 微行电子 STM32H7xx 核心板
L0 系列
stm32l010-st-nucleo ST 官方 STM32L010-nucleo 开发板
stm32l053-st-nucleo ST 官方 STM32L053-nucleo 开发板
L4 系列
stm32l4r5-st-nucleo ST 官方 STM32L4R5-Nucleo 开发板
stm32l4r9-st-eval ST 官方 STM32L4R9I-EVAL 开发板
stm32l412-st-nucleo ST 官方 STM32L412-Nucleo 开发板
stm32l431-BearPi STM32L431 小熊派 开发板
stm32l432-st-nucleo ST 官方 STM32L432-Nucleo 开发板
stm32l433-st-nucleo ST 官方 STM32L433-Nucleo 开发板
stm32l452-st-nucleo ST 官方 STM32L452-Nucleo 开发板
stm32l475-atk-pandora 正点原子 L475 潘多拉 IoT 开发板
stm32l475-st-discovery ST 官方 stm32l475-discovery 开发板
stm32l476-st-nucleo ST 官方 STM32L476-Nucleo 开发板
stm32l433-ali-startkit 诺行 STM32L433 Ali Start Kit 开发板
stm32l496-ali-developer 诺行 STM32L496 Ali Developer Kit 开发板
stm32l496-st-nucleo ST 官方 STM32L496-Nucleo 开发板
stm32l496-st-discovery ST 官方 STM32L496G discovery 开发板
L5 系列
stm32l552-st-nucleo ST 官方 STM32L552-Nucleo 开发板
U5 系列
stm32u575-st-nucleo ST 官方 STM32U575ZI-Nucleo 开发板
H5 系列
stm32h563-st-nucleo ST 官方 STM32H563ZI-Nucleo 开发板
MP1 系列
stm32mp157a-st-discovery ST 官方 STM32MP157A-DK1 开发板
stm32mp157a-st-ev1 ST 官方 STM32MP157A-EV1 开发板
WB 系列
stm32wb55-st-nucleo ST 官方 STM32WB55-Nucleo 开发板
stm32wl55-st-nucleo ST 官方 STM32WL55-Nucleo 开发板

可以通过阅读相应 BSP 下的 README 来快速上手,如果想要使用 BSP 更多功能可参考 docs 文件夹下提供的说明文档,如下表所示:

BSP 使用教程 简介
外设驱动使用教程 讲解 BSP 上更多外设驱动的使用方法
外设驱动介绍与应用 讲解 STM32 系列 BSP 驱动的支持情况,以及如何利用驱动框架开发应用程序
BSP 制作与提交 简介
BSP 制作教程 讲解 STM32 系列 BSP 的制作方法,以及在制作 BSP 和提交 BSP 时应当遵守的规范,视频教程请观看 《RT-Thread STM32 系列 BSP 制作视频教程》
外设驱动添加指南 讲解 BSP 添加更多设备驱动的方法