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

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

[复制链接]
qintian0303 发布时间:2025-5-16 14:16
       我们打开插件,通过USB连接一个H533的开发板,可以看到直接发现STlink-V3(板载的调试器):
# O7 _9 N+ C9 \  [6 X' _
1.png
$ |, ~4 @* P# y. V$ D$ V: d5 T

1 y: O1 t( X  K/ C. s5 v' t) y* Z       我们可以在STM32CUBE DEVICES AND BOARDS中点击这个STlink-V3进行更新固件、控制操作:' A! Q5 f8 b% W  f
2.png
* c+ O6 p: ~; N9 O
+ ?  ?: r% ^3 P& }( X& V* m
       Blink操作可以让STlink-V3等闪烁一段时间(STM32H533开发板对应的是LD7),以此可以判断是否通信正常。1 E' H- L; G, c' a7 O9 c; U4 U
       更新后Blink操作对应的LED变为了LD1,这个应该和不同版本的固件有关。! f( R7 l! t/ B
       在STM32 VS Code Extension中可以在STM32CUBE KEY ACTIONS下看到我们可以直接运行的一些软件:
$ U6 S) A7 h2 @4 ~. }. D" Y$ s5 s
5 F7 @& q/ d" Z/ P9 K. y% H" z' u% y
3.png $ o* v( p" I. q- F3 a  e( o

1 N5 d- m6 F7 I6 a       第一个就是我们必用的STM32CubeMX,用于初始化代码生成,单击就可以运行,相当于和现有软件的联动吧;# `7 N* m) \( z4 |9 o
       接下来是个STMCUFinder,主要用于设备选型,可以快速获取现有产品线的资料,支持按资源搜索,实际上这一部分已经融合到STM32CubeMX里了,没必要下载.. e$ ^, k. v/ h# I5 [2 H0 m
       创建或者加载工程
" S  F/ P  M$ `* ?! P9 v* r  F3 t- a       可以通过两个途径,一个是通过创建一个新的工程(不推荐),另一种是通过STM32CubeMX去生成工程,相信这也是用的最多的,这里注意了使用上的变化主要是工程配置:
6 E6 R: Z* l5 d' O: d- r( g; Z% K; r3 y
5.png - n  y: d" {/ l$ o  _1 U$ u9 a4 c
, o4 G& `" b4 n9 u
       要创建一个针对VS Code的项目,用户必须在STM32CubeMX的项目管理器面板中选择CMake工具链。$ E0 A% S& S( V4 u# A6 {
       创建的工程如下:
# a9 _+ ^5 |1 w1 J
4.png # c9 t0 ]! w3 p
. |  s% s* M( x8 O$ A* b
       可以看到没有常用的那三个IDE的工程文件夹了(MDK、IAR、STM32CubeIDE),不过目前还不能将这个工程加到VS Code的插件中,2.1.1版本可以看到:
& Q  z; J( I8 ^# ~- H0 E
6.png
8 M# o6 B7 t. `, D, e

2 A3 a; v0 Z- [# D0 H# Y) [" k       工程管理这里对应的是红色的,通过错误信息的解读是可以看到找不到STM32CubeCLT,也就是说基于VS Code进行CMake工具链工程的管理需要STM32CubeCLT的参与。
* B5 u. Y! N  T) u( `. ~4 [& \       我们通过查看的配置:
+ R7 ^$ s7 d3 a( N
7.png / j6 S4 ?* d! G$ }9 M

8 v2 q3 Z$ F) j4 c5 v       发现:
: ~* J7 ^. g1 L% X1 I# S7 z
8.png
& C/ ?- ^( ?' ]5 @  |
       目前只有STM32CubeMX是有相关联路径的,我们需要安装相应的软件,会自动刷新:
+ @: L7 M/ {8 W* s: ]; T. l3 U7 t! A" `' O5 |6 _3 @+ Q
9.png
% ?& T" Q: V# I9 M1 j( i* T" Q( L
- N6 G/ _0 t3 U
       接下来加载工程,直接编译,可以直观看到资源利用情况:
! o: q( Q, Q. L# C5 r- G
10.png
& M/ ~5 s7 i4 j$ f8 B

4 s2 n& k  m0 i6 t+ W% k: q( G       如何加载一个工程,在第三版中已经没有直接加载程序选项,我们需要通过如下打开:
7 z6 A: o1 E( `% F( S9 ]
11.png
, p. o: e; L0 ]& }% o  L

6 j- I- `/ F: y- r, \) i       然后选择预设配置““Debug” ”,转到STM32的VS Code扩展,然后点击发现STM32Cube项目:
3 P5 a  E( Q. {1 y" k
12.png + m% N/ R2 u# |, H$ y

) [3 s2 d& s8 M9 x& i       这个时候就会跳转的工程文件,或者已经构建完的可以直接在工程文件进行“Build”:' J( c' y% E6 s) a4 u3 b/ x3 W) g: r8 h
13.png
9 m3 G( A* l% _: d
# ]. L( W0 Y  P2 y! n1 H, m$ z! y
       然后下载就可以了,会打开elf文件,定义到STM32CubeProgrammer进行下载。
6 A6 F. z! ?4 E5 H1 B, e- S& R       如下在线调试界面:
% F- C8 R5 X, D) m, _2 H! U" x
14.png : p% u0 Y- R+ Q' F
) t* `% C% \1 z' ^: H
       直接在对应文件内就可以设置断点:
" W  l# X: \$ M& d6 d& ?
15.png 7 |# c) F' f" F! Z. e( |2 }

8 ~* |6 s0 r) Z2 l6 ?
2 \$ j+ g* D" Z- Q2 n! S+ L
) Q# p, J- e( M/ R. }" ^' r) V* u9 Y, y
5 B; G- r. t' ]. j0 i

! p: [+ x4 Z- j9 B! H$ R0 I8 G( D; G6 J$ X

1 z$ g# g$ |; @# C
6 B" F( x/ s0 Z3 ^( J( `% I1 k! X& z1 F: ]' w$ L/ z+ B" v
5 s2 T& w; d5 p- o8 |0 l  t$ X
3 A: c) N3 r3 C! [! \0 ^
       用VScode编辑程序有一个特点,就是对应的程序的输入参数会显示类型,这个也会比较直观,这个在其他IDE中还没有见到过。新版STM32Cube for Visual Studio Code插件进一步简化传统STM32开发环境搭建步骤,也进一步降低开发门槛,不用费劲的配置支持环境。现在我们的程序可以调试下载了,大家都来体验下最新的开发方式吧。; n; R% R$ k# f; I  y" i
! n! m$ }! J2 L/ ]
+ V- y, {9 l, L+ p1 o
' \0 D6 p- |& ~% g! n  b

# M' N8 n7 n, H3 _. i3 j1 U" ?. F8 ?( @
收藏 评论0 发布时间:2025-5-16 14:16

举报

0个回答

所属标签

相似技术帖

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