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

《STM32CubeMX2 实战课程》学习笔记#7 课程06 STM32CubeMX2导出Keil Studio工程

[复制链接]
北方 发布时间:2026-9-18 10:58

1 课程6-MX2 导出 Keil Studio 工程

本课程演示如何用 STM32CubeMX2 导出 Keil Studio(基于 VS Code 的 Arm CMSIS 方案,即 MDK v6 生态)工程,并在此环境中完成编译、下载和调试。

06.PNG

具体还是用gpio_toggle 工程(NUCLEO-C562RE 开发板,PA5 用户 LED)来进行演示。

相比而言µVision 是传统桌面 IDE;而Keil Studio 是 Arm 新一代基于 VS Code 的开发环境,工程格式为 Open-CMSIS(csolution.yml),工具链通过 Arm Tools Environment(vcpkg)在线管理,调试经 pyOCD + ST-Link。

整个流程如下:

CubeMX2 中打开 gpio_toggle 工程;Project settings 中把工程格式改为 Open-CMSIS、工具链 AC6,生成工程; 在 VS Code 中打开工程目录,由 Keil Studio 插件接管; 在 Manage Solution Target 中把调试器改为 ST-Link(pyOCD); 通过 Arm Tools 配置工具链(CMSIS-Toolbox / AC6 / MDK-Toolbox / CMake / Ninja); 将 Arm CMSIS Debugger 扩展切换到 1.3.0; 然后编译、调试运行,开发板 LED 开始每秒闪烁。

2 内容

2.1 STM32CubeMX2 导出 Keil Studio 工程要先打开工程,双击打开 STM32CubeMX2,在首页(Back to Work? Let's Create Something New)打开最近使用的 gpio_toggle 工程(NUCLEO-C562RE / STM32C562RET6);

工程打开后自动进入 Pinout 界面(STM32C562RET6 LQFP64 引脚图),旁白提示"不需要在 Pinout 界面多做停留",直接点击左侧 Project settings;

在 IDE Project Generation → General Setup 中如下选择:

Format:Open-CMSIS(原为 CMake); Open-CMSIS toolchain:AC6(Arm Compiler 6); Destination 保持 gpio_toggle_open-cmsis; 然后,点击 Generate IDE project。

生成过程中弹出 STM32CubeMX update available 提示,可以根据需要来选择是否点击 Update。

2.2 VS Code 中打开Keil Studio 工程生成后点击 Show on disk 转到工程目录,右键 Open with Code。

此时预先安装的 Keil Studio 插件开始工作(未安装则需在扩展市场安装最新版 Keil Studio Pack)。

VS Code 资源管理器可见 Open-CMSIS 工程结构:.settings、arch、project、stm32c5xx_dfp、stm32c5xx_drivers、utilities 以及 gpio_toggle.csolution.yml。

稍等片刻,左侧 CMSIS 面板出现工程上下文 gpio_toggle.debug_AC6+NUCLEO-C562RE(含 UserCode、construct-files、linker、Components(31) 等节点),底部状态栏显示 NUCLEO-C562RE;Problems 栏提示 "no compiler registered"——工具链尚未配置。

2.3 编译下载

配置调试器为 ST-Link(pyOCD) 点击状态栏/面板中的 NUCLEO-C562RE 打开 Manage Solution Target:Target Type 为 NUCLEO-C562RE、器件 STM32C562RET6,工程 gpio_toggle 的 Build Type 为 debug_AC6。"改完后关闭窗口并保存配置。

061.PNG

配置 Arm 工具链环境 点击 Arm Tools,选择 "Add Arm Tools Configuration to Workspace",打开 Configure Arm Tools Environment / Arm Registry 页面;

期间弹出 Arm Environment Activation 对话框:"是否允许 Environment Manager 按 vcpkg-configuration.json 自动下载并激活工作区工具?"——选择允许。终端随即显示从 microsoft/arm 注册表更新数据、激活环境的过程。

最后保存生成的 vcpkg-configuration.json,文件内容即刚选择的各组件版本。

切回 CMSIS 面板点击编译按钮,终端执行:

cbuild gpio_toggle.csolution.yml --target all --active NUCLEO-C562RE --packs

编译完成后直接点击调试按钮,再点运行。这个过程需要升级和修改用户代码, 在 project/main.c 的 while (1) 中从之前的工程拷入用户代码:

HAL_GPIO_TogglePin(GPIOA, HAL_GPIO_PIN_5);
HAL_Delay(1000);

重新点击编译(终端:Building CMake target 'gpio_toggle.debug_AC6+NUCLEO-C562RE' Using compiler: AC6 V6.24.0),随后重新进入调试——调试配置为 "Run And Debug STLink@pyOCD",终端执行:

pyocd load --probe stlink: ... cbuild-run.yml 即通过 pyOCD + ST-Link 完成烧录。

Debug Console 显示 "connected to remote target localhost:3333"、"Debug session started",程序停在 main;点击运行后,开发板上的 LED 开始每秒闪烁一次,实战闭环完成。

3 小结 3.1 Keil Studio 工程 = Open-CMSIS 格式:

3.2 CubeMX2 中 Format 选 Open-CMSIS、工具链 AC6,生成以 *.csolution.yml 为入口的 CMSIS Solution 工程,目录含 stm32c5xx_dfp(器件族包)、stm32c5xx_drivers、project、arch 等。

3.3 Keil Studio 是 VS Code 插件生态:依赖 Keil Studio Pack / Arm CMSIS Solution / Arm CMSIS Debugger / Arm Tools Environment 一组扩展;工程右键 Open with Code 即被插件自动识别。

3.4 工具链由 vcpkg 在线管理:Arm Tools → Add Arm Tools Configuration to Workspace 生成 vcpkg-configuration.json,允许自动下载激活后,CMSIS-Toolbox、AC6、MDK-Toolbox、CMake、Ninja 全部按版本自动配好,无需手动装到 PATH(与第 7 集 µVision 要求 CMake+Ninja 进 PATH 形成对比)。

3.4 调试链路是 pyOCD + ST-Link:在 Manage Solution Target 中把调试器改为 ST-Link(pyOCD);Arm CMSIS Debugger 1.3.0 可实现"编译完直接点调试、零额外配置"。

3.5 生成的初始工程不含用户逻辑:首次调试灯不闪属正常,需在 main.c 的 while (1) 中加入 HAL_GPIO_TogglePin(GPIOA, HAL_GPIO_PIN_5); HAL_Delay(1000); 后重新编译调试。

收藏 评论0 发布时间:2026-9-18 10:58

举报

0个回答

所属标签

相似技术帖

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版