【STM32开发笔记】基于STM32CubeMX2 和STM32CubeIDE for VSCode的全新STM32C5开发体验

【STM32开发笔记】基于STM32CubeMX2和STM32CubeIDE for VSCode的全新STM32C5开发体验

    • 一、NUCLEO-C562开箱
    • 二、STM32CubeMX2配置
      • [2.1 打开STM32CubeMX2软件](#2.1 打开STM32CubeMX2软件)
      • [2.2 创建STM32CubeMX项目](#2.2 创建STM32CubeMX项目)
      • [2.3 配置LED控制引脚](#2.3 配置LED控制引脚)
      • [2.4 生成CMake项目](#2.4 生成CMake项目)
    • [三、STM32CubeIDE for VSCode开发](#三、STM32CubeIDE for VSCode开发)
      • [3.1 安装VSCode插件](#3.1 安装VSCode插件)
      • [3.2 打开CubeMX2生成的目录](#3.2 打开CubeMX2生成的目录)
      • [3.3 编译CubeMX2生成的代码](#3.3 编译CubeMX2生成的代码)
      • [3.4 编写LED闪烁代码](#3.4 编写LED闪烁代码)
      • [3.5 调试LED闪烁代码](#3.5 调试LED闪烁代码)

ST近期推出了全新的STM32C5系列MCU,搭配新一代配置工具STM32CubeMX2,可为开发者带来焕然一新的开发体验。本文以NUCLEO-C562RE开发板为例,从零开始演示完整的"点灯"开发流程:使用STM32CubeMX2基于开发板创建项目并完成引脚配置,生成CMake工程后导入VSCode,借助STM32CubeIDE for VSCode插件包完成编译、下载与调试。整个过程无需Keil或IAR等传统IDE,即可实现从配置到调试的全链路开发。

一、NUCLEO-C562开箱

3月12日在得捷电子买的NUCLEO-C562RE开发板,从美国明尼苏达州发货,经过两个多星期的等待,上周末终于收到货了。经典的NUCLEO-64环保纸盒:

拆开包装盒,就是开发板本体了:

二、STM32CubeMX2配置

STM32CubeMX2安装包可以从ST官网下载,安装也很简单,这里就不再赘述了。

2.1 打开STM32CubeMX2软件

启动界面就很清新:

主界面同样很清新:

首次打开软件,主界面Recent projects是空的;创建过项目之后,下次打开时,在Recent projects下可以看到最近创建的项目。

2.2 创建STM32CubeMX项目

点中间的"Board",开始根据开发板创建项目:

选中NUCLEO-C562RE,点Continue继续。

填写项目名称,选择项目保存路径:

点"Automatically Download, Install & Create Project"继续。

界面上的项目创建进度条开始更新:

进度条跑完后,STM32CubeMX2项目即创建成功前面填写路径下应已生成 .ioc2 文件。

点"Launch Project"继续,进入配置流程。

2.3 配置LED控制引脚

刚进入配置界面是Pinout标签页,默认是图形化视图(Graphic view):

也可以切换成表格视图(Table view):

因为前面选择的是根据开发板创建项目,所以部分引脚的Signals已有预置配置。

找到PA5,展开Signals列的下拉菜单,勾选Configured:

然后再点右边的配置(Configure)按钮:

会弹出GPIO配置标签页,这里设置模式为输出:

这时候已经可以预览对应的代码了:

对于点灯项目,配置到此即可。

时钟树可以不用修改,但是可以切换到该标签页查看,也是很清新的界面风格,流畅程度只有实际操作过才能体验到:

2.4 生成CMake项目

点左侧的Project settings按钮,切换到项目设置标签页:

默认是CMake项目,另外可以选IAR或者Open-CMSIS(Keil6也是用的Open-CMSIS,可以理解为这是对Keil6的支持)。

三、STM32CubeIDE for VSCode开发

VSCode的下载安装比较简单,这里不再赘述;建议使用最新版VSCode,更新操作非常便捷。

3.1 安装VSCode插件

扩展这里搜索:STM32CubeIDE,能够搜到STM32CubeIDE for VSCode插件包,这个插件包里面一共包含15个插件,安装即可:

3.2 打开CubeMX2生成的目录

首次打开,STM32Cube Bundles Manager会在右下角弹出提示框,提示需要下载一系列支持工具包,点Yes确认即可:

下载完成后也可以看到当前已有的包(Bundle)有哪些,也可以进行升级:

3.3 编译CubeMX2生成的代码

点左侧CMake工具,然后找到C562_BLINK目标右侧的生成图标:

点击这个"生成"图标,即可开始编译,编译命令会显示在"输出"栏,左下角的BUILD ANALYZER还可以显示ROM/RAM占用情况:

3.4 编写LED闪烁代码

找到main.c,插入如下代码:

c 复制代码
      // PA5 is the pin connected to the on-board LED
      HAL_GPIO_TogglePin(HAL_GPIOA, HAL_GPIO_PIN_5);
      HAL_Delay(500);

3.5 调试LED闪烁代码

重新编译成功之后,就可以准备下载和调试了。

调试之前先将开发板通过USB Type-C线连接到PC,如果电脑已经安装了ST-Link驱动,则VSCode右下角会弹出识别到ST-Link调试器的提示信息。

此时切换到调试标签页,应该能够看到调试器信息:

项目默认没有调试的配置文件,需要点"创建一个launch.json文件",然后选中STLink GDB Server选项:

即可自动生成调试配置文件,这个文件是可以使用的,直接保存即可:

然后点"开始调试"按钮,稍等片刻,就可以看到调试会话已经成功启动了:

已成功停在断点处,按F5继续运行,就可以看到板子上的小灯闪烁了:

项目源码:https://gitcode.com/xusiwei1236/STM32C562-BLINK

CubeMX2生成的代码和之前的也有很大差异了,想看生成的代码的网友,可以看看。

相关推荐
Hello_Embed23 分钟前
串口硬件结构与三种编程方式
笔记·stm32·学习·ai编程
Ting.~38 分钟前
软件设计师备考笔记【day5】-程序设计语言与语言处理程序
笔记
LCG元1 小时前
STM32实战:基于STM32F103的智能停车场车位引导系统
stm32·单片机·嵌入式硬件
【 STM32开发 】1 小时前
VSCode 安装图解
ide·vscode·编辑器
WYH2871 小时前
【STM32 串口完全指南】从轮询到中断再到 DMA,一步步教你搞定串口收发!
stm32·单片机·嵌入式硬件
hrw_embedded1 小时前
STM32单片机增加全局内存增大导致ADC数据丢失,明明两个不相干的两个部分,为什么会相互干扰?
stm32·单片机·嵌入式硬件
余生皆假期-1 小时前
YuanHub 源码分析【六】MIT 模式
笔记·单片机·嵌入式硬件
van久1 小时前
Day22:JWT 完整学习笔记 + 原理 + 面试题 + 帮助类封装
笔记·学习
05候补工程师2 小时前
[408考研笔记] 传输层与网络层核心辨析:从逻辑通信到滑动窗口计算
网络·经验分享·笔记·网络协议·tcp/ip·考研·ip
_ 川三西2 小时前
Anaconda安装后环境变量的添加
vscode·conda