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

【经验分享】STM32G0学习手册——使用SWD接口进行调试 (HAL库)

[复制链接]
STMCU小助手 发布时间:2021-11-9 17:00
STM32G0系列提供了SWD接口调试,所以先要熟悉如何调试,接下来才能把代码烧录到芯片里面去。
, ?9 n( e* c4 T7 g9 \3 Q2 p( h7 U1 [! J2 S/ L1 f) D7 E6 h7 {2 }
首先我们先新建工程,如果不是官方开发板就点"start My project from MCU",选择对应的芯片型号。我这里选G071C8,进入工程。, W, H6 }6 t$ O

) X, p6 H) D' T6 o6 Q$ c
20200419154927717.png

$ Y- B# d) Z# m3 _, t+ J
/ K7 Y; c: u/ D2 w: A' X1 ] 在"System Core"中,找到"SYS";或者在上方搜索框中输入SYS快速定位。
7 ~5 `5 S' `8 @# @3 l在"SYS Mode and Configuration"中,勾√ 上"Serial Wire",就是启用swd调试口,同时你会注意到引脚视图中PA14/PA13变成绿色,显示它的功能。左边GPIO字也会变色,表明GPIO选项里面也有更改配置。
) ~; Z* S9 r+ @6 U
20200419155714752.png

; }8 ]+ I7 l( u# z% w' ^& ]4 R
2 h6 e* C$ k" y! Y- Y1 m 点击"Project Manager"—"Project",写上项目名称,项目保存路径,"Application Structure"选择"Basic","Toolchain/IDE"选择"MDK-ARM","V5"(版本根据你安装软件版本来填,在mdk软件-help-about能看到)。! g% Y. U3 m2 B% l* H$ G

# ~% E1 @2 V& W3 L/ D
20200419160441447.png

! t% A) Y" z6 H: y, r
* X& v- B7 g' \( b2 |5 ? Code Generator里按照需求打勾即可. B7 v6 J" ?2 r

( ^4 i$ G% ?2 h& X! G' C
20200419160655202.png

' w. P6 J. S$ u* i' S" f2 Q; G! M! q! J' r1 u) O, t% X
点击"GENERATE CODE",生成代码。在工程代码的"MDK-ARM"目录下,使用MDK软件打开工程文件。
4 h, J% a/ O3 w2 P硬件连接:+ ^0 Q; Y& \( h: ]: `
ST-Link                开发板0 ]" _9 m( K# S* V4 @
# W" w# }3 Z- q) y
SWDIO ---------- PA14
: d5 X8 m; }3 F; r' H6 n+ U; }: w" A; \# j: ^4 k
SWCLK ---------- PA13" b/ X" @. Q' e& U
$ l" `% q/ U5 h" D# r5 R
  VCC    ----------  VCC( F, D, {# p/ X) r* m( o  I6 E' b
- C% b7 |4 ^/ ]* M( s: V) J, I
GND    ----------  GND2 _' E( q; N! q( O6 X( h- y. u" G" a

' A8 D) f5 e/ H" h/ `% H在上一篇文章中给,我们已经装好st-link驱动。直接点击编译。在点击下载烧录。就完成了。因为只是开启一个swd,所以板子不会有任何可见的变化。
" L( r% E) ]% p. G( k+ H" l; }. A为什么我这没配置时钟树呢?因为使用了芯片自带HSI。4 A; C2 l' e' x
: G2 O& a0 V. s. D! F: s+ S6 z
20200419161832300.png
2 ]" a2 a1 `, ?
+ w8 Z* o# S/ c
没有开启SWD调试,烧录代码会如何?/ N$ `# a: h8 K9 Y+ n
) _0 V4 E5 \% B4 [
如果我们在写代码时,忘记了开启SWD调试接口,代码已经烧录进去。芯片就会关闭调试接口,第二次烧录时候软件会提示连接不上芯片。按照一下操作重新开启调试接口:; z) X5 W0 B) x6 O4 b* n4 v
1 k. A* r) O$ @+ C
20200419163306997.png
3 y+ t& R0 i9 c7 l1 r) X+ C

. U  Y# {2 j3 b" @: b1.在cubemx工程里面添加上调试接口重新生成代码;  s6 x5 E* P# k' `+ Z

* h$ W2 G( q6 g- v, O1 w2.在MDK软件里重新编译一下;
6 z9 p/ Z4 l5 F% k  _! Y! U/ `" a5 v7 I/ p( |9 D# @; V5 p/ b$ U
3.按住开发板复位键不要松开,点击软件烧录按钮,在放开复位键,代码就能烧录到芯片。重新开启了调试接口。  C' l% C% q$ N/ y0 s
+ O% y2 Z5 h& W- @

$ E4 Z$ N* ?3 r( w
4 x" _  E; y, h# Q' }# M) D& r
赞 收藏 评论0 发布时间:2021-11-9 17:00

举报

0个回答

所属标签

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