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

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

[复制链接]
qintian0303 发布时间:2025-5-16 14:16
       我们打开插件,通过USB连接一个H533的开发板,可以看到直接发现STlink-V3(板载的调试器):2 G& T  [4 N0 n4 e6 a/ e2 t
1.png
2 g( I. C- Y0 p+ z' X

! Z: d$ B4 o7 m" U$ M       我们可以在STM32CUBE DEVICES AND BOARDS中点击这个STlink-V3进行更新固件、控制操作:2 t6 L5 ~2 {. \, @
2.png 6 Z% ?# i! \6 T

5 U+ w) w# l! u1 l6 i5 ]" n4 c" B       Blink操作可以让STlink-V3等闪烁一段时间(STM32H533开发板对应的是LD7),以此可以判断是否通信正常。" @( E" D0 k! ?- U
       更新后Blink操作对应的LED变为了LD1,这个应该和不同版本的固件有关。& w) x( l/ b! |, G4 {: R. H6 ~
       在STM32 VS Code Extension中可以在STM32CUBE KEY ACTIONS下看到我们可以直接运行的一些软件:
( k. l. l% G# R5 c! C1 x, h
2 _3 ~* Z! u& F. K# |
3.png * c. D2 b9 z8 j( D' f4 q

, ]# t( H  V0 M9 Z8 `5 T$ |       第一个就是我们必用的STM32CubeMX,用于初始化代码生成,单击就可以运行,相当于和现有软件的联动吧;
# @  j+ v9 `6 B+ C2 P; N       接下来是个STMCUFinder,主要用于设备选型,可以快速获取现有产品线的资料,支持按资源搜索,实际上这一部分已经融合到STM32CubeMX里了,没必要下载.2 F1 `$ a' u) m) F
       创建或者加载工程. W7 H$ b, Y  C7 q7 X
       可以通过两个途径,一个是通过创建一个新的工程(不推荐),另一种是通过STM32CubeMX去生成工程,相信这也是用的最多的,这里注意了使用上的变化主要是工程配置:
# Z7 Z1 O; n6 h6 W( b
5.png
. X& _: _4 s6 e0 u
+ c" F* U& K# @1 `9 n- `
       要创建一个针对VS Code的项目,用户必须在STM32CubeMX的项目管理器面板中选择CMake工具链。* u8 F1 y; E  @6 q' J# ]
       创建的工程如下:4 r; ^8 L5 o1 ^* c& S
4.png
0 q; ~8 |2 C! w1 ^' T

4 V- Q$ Y3 L* U5 j5 w1 X1 M& t       可以看到没有常用的那三个IDE的工程文件夹了(MDK、IAR、STM32CubeIDE),不过目前还不能将这个工程加到VS Code的插件中,2.1.1版本可以看到:2 L( H' R+ v! Y9 y$ Q* v
6.png 7 o& P" b+ z) x2 T  Z" L& U" X3 R3 w
# s6 d( E& P( a* @' ^1 P5 ?2 A
       工程管理这里对应的是红色的,通过错误信息的解读是可以看到找不到STM32CubeCLT,也就是说基于VS Code进行CMake工具链工程的管理需要STM32CubeCLT的参与。! j: {  G, D/ e1 s$ Q' e: V$ _- N! b% m
       我们通过查看的配置:& i* _9 D6 B' _7 r# u3 @7 N
7.png ; O3 j& x- I: ?
( S- N% h1 X+ L6 N$ R% d* a  X
       发现:
" L  n3 q& t9 x, e7 W- @4 U
8.png

0 h( I" R4 o& `: E5 n/ U2 g+ X       目前只有STM32CubeMX是有相关联路径的,我们需要安装相应的软件,会自动刷新:
4 k* m: B: _" V, H. M: Z! ^& J# T2 d/ D9 @& U1 c
9.png
0 C" W  f- D+ `: s

. ]* R! Z1 d5 W       接下来加载工程,直接编译,可以直观看到资源利用情况:& {# p2 L( o5 W2 f  I$ g2 I
10.png " f& h3 E8 G3 @" s1 D6 J

! L0 X2 [6 [( j7 Y8 X* d       如何加载一个工程,在第三版中已经没有直接加载程序选项,我们需要通过如下打开:
8 q- }2 x2 N! i) b/ h! B$ G+ c
11.png & Q' p) d- x+ o! R
: b; V7 X: m( V0 A. A0 }
       然后选择预设配置““Debug” ”,转到STM32的VS Code扩展,然后点击发现STM32Cube项目:
1 g2 E- t5 [, f. `) v2 W. V* a$ W
12.png
6 S  Q9 d  _3 v% R5 ]

5 g! g7 W$ ~* U6 b* Q       这个时候就会跳转的工程文件,或者已经构建完的可以直接在工程文件进行“Build”:
0 Q/ n4 D. p* \: s: J: D% z
13.png   r1 C! c7 M+ |( Z# p+ @* B. E# D

9 W* u9 o; q. J7 ~; b       然后下载就可以了,会打开elf文件,定义到STM32CubeProgrammer进行下载。- ~" B- T+ C2 ?, Q
       如下在线调试界面:
! Y& T/ S8 O) M  A( j! r
14.png : w4 A9 E7 w- D+ _3 n
* L4 O4 v# f+ a/ s1 b- {
       直接在对应文件内就可以设置断点:
. K% _3 G1 q# I6 X
15.png 4 h" W! u$ `$ g( Z1 ~, O

# L) r  t) a+ N! b2 L1 H5 a2 Z( [$ P" F/ c# d  z+ K/ j0 q
$ O8 E4 ~( ]+ q" {; d$ t. t

4 h" ~/ W( y; e: G* j3 T, N4 s7 y1 `' I/ E' p9 Y1 M4 J8 b3 e6 C7 W% A
! O/ Z: q8 K  Q# g% ~6 E8 q% ^; ^

9 t; M/ A. i9 C" w8 Z& M2 V- o, S1 q- [/ [. l

# Q1 b) O3 M. n( A- O; p) g
, t& b0 E0 j0 f" Q+ b
5 t1 Z% w9 u* r/ g' J" o. Q1 S/ m& {7 b0 y" a$ |" ?; V
       用VScode编辑程序有一个特点,就是对应的程序的输入参数会显示类型,这个也会比较直观,这个在其他IDE中还没有见到过。新版STM32Cube for Visual Studio Code插件进一步简化传统STM32开发环境搭建步骤,也进一步降低开发门槛,不用费劲的配置支持环境。现在我们的程序可以调试下载了,大家都来体验下最新的开发方式吧。
$ h2 X9 v# s# }$ ]( r0 b8 y: `7 o6 m. h! Z1 J: l7 g" a
8 \8 `, L5 u3 {6 |% Z* D

: e! B" u$ u; ]4 q6 Y) h9 [( j: G& `
4 H2 i# Q- U0 p- ^
赞 收藏 评论0 发布时间:2025-5-16 14:16

举报

0个回答

所属标签

相似技术帖

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