使用 PlatformIO 调试 STM32
让我们使用 PlatformIO 调试 LED 闪烁代码。
调试STM32
使用 PlatformIO 调试 STM32 非常简单。您可以使用 ST-LINK V2 编程 器设置断点、监视变量并单步执行代码。
准备工作
本教程使用以下硬件:
BlackPill STM32 板
单片机:STM32F411CEU6 开发板:WeAct Black Pill V2.0 原理图
您可以以低于 4 美元的价格购买廉价的 BlackPill STM32 克隆板。您可以使用其他STM32板,但需要修改platformio.ini文件和LED 引脚编号。
ST-LINK V2编程器
您需要它来将固件上传到开发板并调试代码。 您可以以低于 5 美元的价格购买廉价的 ST-LINK V2 克隆版。
配置开发环境
VSCode 与 PlatformIO
您可以从 VSCode 扩展市场安装 PlatformIO。
STM32CubeProgrammer
您需要它来将固件烧录到开发板。
克隆代码仓库
git clone --branch blackpill-led-blink-arduino https://github.com/yuichiroaoki/stm32-tutorial.git
cd stm32-tutorial
快速入门
-
将 BlackPill STM32 板连接到 ST-LINK V2 编程器。

按照上图连接 ST-LINK V2 编程器和 BlackPill STM32 开发板。 -
将 ST-LINK V2 编程器连接到计算机。
-
在 VSCode 中打开项目文件夹。
-
打开
main.cpp并单击任意行号以设置断点。程序运行到断点时会暂停,您可以查看此时的变量值。

-
单击左侧边栏上的
Run and Debug,然后单击Start Debugging按钮开始调试。程序在断点处暂停后,即可查看变量值。例如,
SystemCoreClock保存系统时钟频率。下图中,该频率为 96 MHz。
在本教程中,我们使用 Arduino 框架通过 PlatformIO 来调试 STM32 板。不过,您也可以使用 STM32Cube 进行调试。