你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

如何使用STM32CubeMX2生成VS Code代码

[复制链接]
STMCU-管管 发布时间:2026-6-24 08:48

摘要

本文详细介绍如何使用STM32CubeMX2生成适配Visual Studio Code的STM32工程代码,内容包括在STM32CubeMX2中创建与配置工程、生成兼容VS Code的代码、将工程导入集成开发环境,以及搭建编译和调试环境。按照该流程操作,开发者可借助STM32CubeMX2与VS Code,高效开展基于STM32微控制器的嵌入式应用开发。

简介

STM32CubeMX2是一款功能强大的图形化工具,可根据用户选择的外设与中间件生成初始化代码,简化STM32微控制器的配置与初始化工作。搭配轻量且功能丰富的集成开发环境Visual Studio Code以及STM32CubeIDE for Visual Studio Code扩展插件,开发者即可获得一套专为STM32开发打造的高效集成开发环境。

VS Code端的STM32CubeIDE for Visual Studio Code扩展插件依托成熟的STM32Cube生态,可以直接在软件内实现工程导入、编译与调试功能,优化开发流程。通过这种组合,开发者既能利用STM32CubeMX2快速生成代码,也可在同一平台完成工程管理、程序编译与调试工作。

本文将完整讲解如何创建适配VS Code的STM32CubeMX2工程,涵盖代码生成、通过STM32CubeIDE扩展导入工程、搭建编译与调试环境等内容,助力提升STM32开发效率。

前置准备

使用STM32CubeMX2搭配Visual Studio Code开展开发前,请确保已安装并配置好以下工具及组件:

  • STM32CubeMX2
  • 最新版STM32C5 HAL2驱动库
  • STM32CubeIDE for Visual Studio Code扩展插件

本文示例硬件为NUCLEO-C562RE开发板。

1.

创建STM32CubeMX2工程

本节介绍如何使用STM32CubeMX2新建STM32工程、配置外设,并完成适配VS Code开发的相关设置。

  • 启动STM32CubeMX2。
  • 在列表中选择目标STM32 MCU或Board。
  • 确认所选设备,进入工程配置界面。

image.png

  • 设置Project Name与Project Location。
  • 选择【Automatically Download,Install&Create Project】继续操作。

image.png

  • 选择【Launch Project】开始。

image.png

1.1 配置外设与引脚

在引脚配置选项卡中设置应用所需引脚。以NUCLEO-C562RE开发板实现简单的LED闪烁功能为例,将PA5配置为通用输出引脚,该引脚对应板载用户LED。

image.png

image.png

  • 切换至[Clock]选项卡,查看时钟配置。本示例使用默认时钟参数,无需修改。
  • 进入[Peripheral]选项卡,配置所需外设。本示例仅需通用输入输出口,无需额外外设。
  • 如需使用中间件(如FreeRTOS、USBX),可在[Middleware]选项卡中启用并配置。本LED闪烁示例无需配置中间件。
  • [Parts]选项卡用于配置芯片专属驱动及相关参数。本简易示例保持默认设置即可。

1.2 设置VS Code导出格式

  • 进入[Project Setting]→[IDE Project Generation]→[General Setup]界面。
  • 确保[Format]选择CMake,[CMake toolchain]选择GCC。
  • [Generate]工程。

image.png

STM32CubeMX2会生成源代码、头文件以及CMakeLists.txt等核心编译配置文件。

上述文件可直接适配VS Code与STM32CubeIDE for Visual Studio Code扩展插件。

image.png

2.

将生成的工程导入VS Code

以CMake格式完成STM32CubeMX2工程生成后,按以下步骤在VS Code中导入配置。

打开工程文件夹

  • 启动VS Code
  • 点击【Open Folder...】

image.png

  • 浏览并选中STM32CubeMX2生成工程的根目录,点击【Select folder】载入工程至VS Code。

image.png

确认已安装所需扩展插件

检查VS Code中已安装并启用STM32CubeIDE for Visual Studio Code扩展插件与CMake Tools扩展。

安装STM32CubeIDE for Visual Studio Code扩展插件可自动配齐STM32开发所需全部依赖及配套插件,简化配置。

image.png

如需管理插件、保持开发环境整洁,可为MX2工程新建专属VS Code配置方案。

如需了解配置步骤,可参阅如何为STM32CubeMX2配置Visual Studio Code配置方案,借助配置方案优化开发流程。

编译环境配置

打开工程后,VS Code识别CMakeLists.txt并弹出编译环境配置提示,可通过Command Palette命令面板完成配置。

Windows、Linux系统快捷键:Ctrl+Shift+P;macOS:Cmd+Shift+P,调出命令面板后输入指令执行。

选择配置预设

输入并选择【CMake:Select Configure Preset】,选用预设编译配置。

image.png

选择调试预设配置

界面会出现【debug】和【release】两个选项,请选中【debug_GCC_NUCLEO-C562RE】。本示例中,该预设专为GCC工具链在NUCLEO-C562RE开发板上调试定制,可自动启用适配的编译参数与调试符号。

image.png

配置STM32Cube工程

随后在命令面板执行【STM32Cube:Setup STM32Cube project (s)】指令,页面将弹出配置标签页,在此选择工程对应的目标Board/Device与Toolchain。

image.png

根据项目需求修改配置项,点击【Save and close】生效配置。

image.png

完成以上步骤后,CMake Tools与STM32CubeIDE for Visual Studio Code扩展插件配置完毕,即可依托对应工具链和芯片参数编译、调试STM32CubeMX2工程。

3.

工程编译

在VS Code导入并配置好STM32CubeMX2工程后,可使用内置工具进行项目编译。

添加LED闪烁测试代码

编译前,本例新增一段LED翻转代码用于环境验证。打开main.c,在while(1)循环体内添加下述代码,实现用户LED(PA5)周期性翻转。

image.png

while (1) {HAL_GPIO_TogglePin(HAL_GPIOA, HAL_GPIO_PIN_5);  // Toggle User LEDHAL_Delay(500);                                 // Delay 500 ms}

编译工程

按下Ctrl+Shift+B执行默认编译任务;也可打开命令面板(Windows:Ctrl+Shift+P/Mac:Cmd+Shift+P),执行【CMake:Build】,或直接按下F7编译。

image.png

编译信息输出在终端窗口,可查看编译进度、报错与警告。

image.png

  • 清理并重新编译

如需清理并重新编译,在命令面板执行【CMake:Clean Rebuild】。该操作会先删除历史编译产物,再重新编译项目。

image.png

生成编译配置文件

编译流程依托STM32CubeMX2自动生成的CMakeLists.txt,保障所有源码与依赖文件被正确收录。

选择编译目标

通过VS Code窗口左侧CMake Tools状态栏,选定编译、调试、下载目标,同时可打开编译分析工具。

image.png

4.

项目调试

高效调试是嵌入式开发的关键。VS Code搭配STM32CubeIDE for Visual Studio Code扩展插件与CMake Tools,可搭建完善的STM32CubeMX2工程调试环境。

检查bundle更新

在STM32Cube插件的【Bundles Manager】中确认工程组件包为最新版本,保证兼容性并使用最新调试功能。

打开命令面板(Windows:Ctrl+Shift+P/Mac:Cmd+Shift+P),执行【STM32Cube:Open System Bundles Manager】。

image.png!

连接调试器

通过STLINK或兼容调试接口将STM32开发板接入电脑,确认驱动与固件已更新至最新版本,保障通信稳定。

image.png

选择调试配置

打开Run and Debug面板(快捷键Ctrl+Shift+D)。

点击新建launch.json文件,生成调试配置。

image.png

选择【STM32Cube:STLink GDB Server】,或选用该插件提供的其他适配调试环境。

image.png

该操作自动生成适配当前STM32工程的launch.json调试配置文件,实现调试环境无缝对接。

image.png

实用小技巧:在json中添加如下代码即可开启实时变量监视。

image.png

您还可自定义launch.json,配置可执行文件路径、调试服务加载程序、SVD寄存器描述文件等调试参数。

启动调试会话

按下F5快捷键或点击绿色【Start Debugging】按钮,VS Code启动调试器、烧录固件,程序停止在复位入口或首个断点处。

image.png

设置断点

点击代码行左侧边栏,即可在对应位置添加断点,程序运行至此暂停,方便查看变量与代码执行流程。

image.png

单步调试代码

借助调试工具栏完成如下操作:

  • Step Over (F10):执行下一行代码,不进入子函数内部
  • Step Into (F11):跳转进入被调用函数
  • Step Out (Shift+F11):退出当前函数

查看call stack

Call stack面板展示代码执行到当前位置的函数调用链路,便于排查复杂程序逻辑问题。

image.png

查看变量

通过变量窗口与监视窗口,在线查看程序运行时变量和表达式的值。

image.png

查看寄存器

寄存器视图可按需对CPU底层寄存器进行查看与修改。

image.png

查看内存

借助Eclipse CDT Cloud配套的Memory Inspector查看内存数据。

打开命令面板(Windows:Ctrl+Shift+P/Mac:Cmd+Shift+P),执行命令【Memory:Show Memory Inspector】,输入目标内存地址即可查看对应内容。

image.png

串口监视器

串口通信可使用同样源自Eclipse CDT Cloud的Serial Monitor插件。

打开命令面板,执行【Open serial】命令调出串口监视器。

image.png

打开串口监视器时,需配置串口号与波特率,参数要和设备串口配置保持一致。

image.png

RTOS调试(按需使用)

若项目使用FreeRTOS或其他实时操作系统中间件,该STM32CubeIDE for Visual Studio Code扩展插件支持RTOS感知调试。

打开RTOS视图,可实时监控任务状态、优先级及堆栈信息。

image.png

如需深入了解RTOS调试细则,可参阅技术文档《How to use FreeRTOS™ with STM32CubeMX2》,文中详细介绍各类FreeRTOS调试方法。

总结

本文完整介绍基于VS Code搭配STM32CubeMX2的全套开发流程,包含工程创建、代码生成、工程导入、编译构建与在线调试。依托STM32CubeIDE for Visual Studio Code扩展插件和CMake Tools工具链,开发者可搭建高效灵活的STM32单片机开发环境。

遵循本文流程与规范,能够顺畅完成从STM32CubeMX2工程配置到代码开发、调试的全流程,简化环境部署、提升开发效率。借助这套完善的工具组合,嵌入式工程师可以把更多精力投入应用功能开发,而非耗费在开发环境配置上。

收藏 评论0 发布时间:2026-6-24 08:48

举报

0个回答

所属标签

相似分享

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版