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

【2025·STM32峰会】4、实训分享篇-基于H533的VScode调试详细操作

[复制链接]
qintian0303 发布时间:2025-5-16 14:16
       我们打开插件,通过USB连接一个H533的开发板,可以看到直接发现STlink-V3(板载的调试器):8 W% x) C' ~3 s3 W
1.png
! K9 L7 T8 I3 L" M
- U# Z' y! `0 @5 K7 g5 g
       我们可以在STM32CUBE DEVICES AND BOARDS中点击这个STlink-V3进行更新固件、控制操作:  U" O# M5 Q: m; e) m! Q6 e- K
2.png
% M% A' m& m0 U+ a$ ]

. z' r( s; w7 T/ J& ~       Blink操作可以让STlink-V3等闪烁一段时间(STM32H533开发板对应的是LD7),以此可以判断是否通信正常。
$ i9 r8 Z' V: S# v       更新后Blink操作对应的LED变为了LD1,这个应该和不同版本的固件有关。- W0 j* i+ g4 G, _1 G
       在STM32 VS Code Extension中可以在STM32CUBE KEY ACTIONS下看到我们可以直接运行的一些软件:
* k" d# u' s, @/ j. E( G/ O/ J: s4 R  M" H5 p% S) [& Y8 }
3.png 9 t; h% Y0 ?8 D( h
5 d" I3 t& A5 r) x' ?/ @0 j5 G& ^
       第一个就是我们必用的STM32CubeMX,用于初始化代码生成,单击就可以运行,相当于和现有软件的联动吧;) C4 ]) _4 H& [9 ?
       接下来是个STMCUFinder,主要用于设备选型,可以快速获取现有产品线的资料,支持按资源搜索,实际上这一部分已经融合到STM32CubeMX里了,没必要下载.
+ c- l& q1 ]5 ^2 z" L       创建或者加载工程, @* w) |7 a/ ?7 e4 V$ A0 Y- |; }
       可以通过两个途径,一个是通过创建一个新的工程(不推荐),另一种是通过STM32CubeMX去生成工程,相信这也是用的最多的,这里注意了使用上的变化主要是工程配置:$ X) v# E6 y: Q& S! `8 i+ v# U+ q) ^
5.png 4 W6 B( O9 F! {, p0 [; O7 C
4 B' {; `( m# s  Q; O
       要创建一个针对VS Code的项目,用户必须在STM32CubeMX的项目管理器面板中选择CMake工具链。7 @4 U" Z  S2 ]; Z
       创建的工程如下:
; A! b9 o: M8 U' n& T# A  d
4.png
! c" u/ E+ f0 E5 o5 i7 A! {
/ T5 a+ W: d* ]7 ~: G" S# @# _8 k
       可以看到没有常用的那三个IDE的工程文件夹了(MDK、IAR、STM32CubeIDE),不过目前还不能将这个工程加到VS Code的插件中,2.1.1版本可以看到:+ p4 e7 P8 V( p: d6 m
6.png
6 N8 ]) h$ j# a
. K. |2 r6 C- L9 o3 k
       工程管理这里对应的是红色的,通过错误信息的解读是可以看到找不到STM32CubeCLT,也就是说基于VS Code进行CMake工具链工程的管理需要STM32CubeCLT的参与。7 r6 G8 a/ M) V4 V$ M' X7 {4 B
       我们通过查看的配置:* M9 h  b' l7 [) `1 [/ x
7.png 3 G7 }& y# ], a; }! ]
1 T$ Z6 A$ d1 @  v$ f
       发现:( A/ p* l* X2 e* Y* E- g
8.png

( U6 X3 ~% W9 X, |       目前只有STM32CubeMX是有相关联路径的,我们需要安装相应的软件,会自动刷新:5 F# _0 O/ U0 Y$ T! k
. d& a/ o  }1 t
9.png
6 x( `" \- B7 O9 E
5 D6 o6 l, R; K, N% }
       接下来加载工程,直接编译,可以直观看到资源利用情况:
' [5 ?+ Y' Z7 {+ h* g
10.png
* c; _" Q% Y- l9 k3 j) h+ T1 Q+ o) D

8 v8 H: _6 I* Z  K" P       如何加载一个工程,在第三版中已经没有直接加载程序选项,我们需要通过如下打开:
. D; x% Y5 U1 B# L8 @+ j: k0 P
11.png
8 H! g7 d! b% \1 j3 [5 \$ _3 n
; O2 q1 O/ e: U% i" H
       然后选择预设配置““Debug” ”,转到STM32的VS Code扩展,然后点击发现STM32Cube项目:& `, \; G3 C8 A2 G& J/ X
12.png
( _  y$ f8 K. |% e2 C+ Q7 [* ]8 t$ N

' |4 k, |; s  K1 F3 n' a       这个时候就会跳转的工程文件,或者已经构建完的可以直接在工程文件进行“Build”:
  q9 o' f% Q$ k$ z7 o# J9 z! d
13.png
( i( X" x; y. C2 A( S- W
$ N$ l9 h8 C; R  ?0 i4 _
       然后下载就可以了,会打开elf文件,定义到STM32CubeProgrammer进行下载。
# a3 C2 ~5 b+ c* x/ K       如下在线调试界面:0 i( A4 o, g# K# b( A7 n
14.png
6 {8 h! d& @' S7 C! i

' q( l- m6 O9 Z! r/ h3 u3 u       直接在对应文件内就可以设置断点:( Z, z& G' b4 _8 v
15.png
/ E2 h+ s9 T& b0 J  c- L- T

+ }4 V! S0 d2 R8 }/ A' B9 {; V
+ W' `$ g' `, H. q, S9 \! z7 T+ n; K# B# W% K9 p
; q' D6 k8 r! i) s' t+ F( p, J/ h4 l
; z% t$ ?; M  w7 e# Z# b

; U: V0 v1 y7 l3 ?3 P4 w
: E4 \& V# r7 `1 ^9 }" M6 y6 i$ ]) B
/ c: M7 Y  \* [, z" E" K

# i2 E- f6 h' c) \; U6 z8 q/ g  @
$ b6 a% B6 h6 v$ \6 j2 F9 u# s: m6 t9 u% ^* ~7 r
       用VScode编辑程序有一个特点,就是对应的程序的输入参数会显示类型,这个也会比较直观,这个在其他IDE中还没有见到过。新版STM32Cube for Visual Studio Code插件进一步简化传统STM32开发环境搭建步骤,也进一步降低开发门槛,不用费劲的配置支持环境。现在我们的程序可以调试下载了,大家都来体验下最新的开发方式吧。8 F# X! v6 C. C* ~4 t6 ?  }
7 T9 a3 f+ E% L

4 {6 Z8 D1 |# r0 H+ O; j" z( y. A+ U* R
& v: \4 P$ z! c6 \

8 \; v% L( M3 z" p7 A4 Y
赞 收藏 评论0 发布时间:2025-5-16 14:16

举报

0个回答

所属标签

相似技术帖

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