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

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

[复制链接]
STMCU小助手 发布时间:2021-11-9 17:00
STM32G0系列提供了SWD接口调试,所以先要熟悉如何调试,接下来才能把代码烧录到芯片里面去。  y& l/ w  n7 o$ i

/ q" L  f0 v0 v6 i! W首先我们先新建工程,如果不是官方开发板就点"start My project from MCU",选择对应的芯片型号。我这里选G071C8,进入工程。
9 Y; r7 M# J. X1 R" v4 ]6 e
2 h; Y, ^" m% x
20200419154927717.png

/ J) s* J" ?3 H5 L
6 Y, ^& E* `2 q2 L: H 在"System Core"中,找到"SYS";或者在上方搜索框中输入SYS快速定位。, p& d9 C$ C" r: r9 L) {3 |
在"SYS Mode and Configuration"中,勾√ 上"Serial Wire",就是启用swd调试口,同时你会注意到引脚视图中PA14/PA13变成绿色,显示它的功能。左边GPIO字也会变色,表明GPIO选项里面也有更改配置。/ x/ K7 t; r4 D8 A
20200419155714752.png
$ i) e+ O1 t) X# |& \: R, p* Y
0 A5 \% ?1 O( C1 j# p8 D4 w
点击"Project Manager"—"Project",写上项目名称,项目保存路径,"Application Structure"选择"Basic","Toolchain/IDE"选择"MDK-ARM","V5"(版本根据你安装软件版本来填,在mdk软件-help-about能看到)。  n' S4 `3 V/ Y+ H6 W( m3 S. {
- E! v0 {( T- T4 x
20200419160441447.png

  t1 G* f9 U( a( R7 l4 i/ c' G& E# @3 Y9 B5 G0 d# H
Code Generator里按照需求打勾即可& d# N3 ~0 Q6 ?7 |8 h0 r) D

2 p+ \- A0 r% R2 Z: x/ v8 H# h, ]
20200419160655202.png

8 V0 `' X: N6 V( t6 `* e/ B0 c: R5 M6 `  L, d
点击"GENERATE CODE",生成代码。在工程代码的"MDK-ARM"目录下,使用MDK软件打开工程文件。# v6 z# `4 Q9 e: ~
硬件连接:
( G/ q/ w( S4 t9 p3 [9 oST-Link                开发板
- {/ V( j/ g  Z' E9 E, V# E- S' w
6 }1 U. u; ^& K, k8 p9 SSWDIO ---------- PA14, U" V3 G" r% P$ \" H  N

# z4 d6 D8 c% _) |* NSWCLK ---------- PA133 ]# P6 q$ T2 t/ z! m+ a6 m- p& t
9 V- r8 I* Q+ \  }) I  P! J
  VCC    ----------  VCC" h% t1 b6 E9 m
* N$ |1 X1 h0 m. c6 E4 j+ r" @
GND    ----------  GND
2 N" [3 C- @- ^+ f5 O2 }) b* v' v, i
在上一篇文章中给,我们已经装好st-link驱动。直接点击编译。在点击下载烧录。就完成了。因为只是开启一个swd,所以板子不会有任何可见的变化。
* R/ ~) o9 R# ]# X+ e' q6 T4 a6 |为什么我这没配置时钟树呢?因为使用了芯片自带HSI。
6 I  u7 b7 V1 e2 J& d7 ]* N( y8 O
/ d" I- J! g1 j( b5 _: q
20200419161832300.png
, a, ?: {$ _- E. w3 A
3 F% Y3 h# T" @0 K& c
没有开启SWD调试,烧录代码会如何?
. l4 Y% W3 x/ K3 x5 ?  i/ T- Y) O) s, d- ^# f6 `! R  m) U
如果我们在写代码时,忘记了开启SWD调试接口,代码已经烧录进去。芯片就会关闭调试接口,第二次烧录时候软件会提示连接不上芯片。按照一下操作重新开启调试接口:1 S* J, ]7 F' B% ]. |3 M" l# x

. \; o1 b" M' p) T* b( z
20200419163306997.png
5 Y* }' i; F0 b3 }9 o! q& r
! T) ]% g# n) Q. `* K  ?
1.在cubemx工程里面添加上调试接口重新生成代码;6 C9 Z7 U& F! d% m" S5 E

$ z4 k# V+ N9 k; q! G: K7 z2.在MDK软件里重新编译一下;: {; [2 E7 E! A* C3 @* `! r& e
4 h6 J+ j# D4 t& B8 M0 L
3.按住开发板复位键不要松开,点击软件烧录按钮,在放开复位键,代码就能烧录到芯片。重新开启了调试接口。, d. U  N- L6 T) ]) @1 A$ t7 \8 H

2 w5 L, n# @+ f& ?$ G9 X# D/ o5 k5 ]' N5 ?/ N5 k- ?" w

. d4 T; T6 {1 `: w
收藏 评论0 发布时间:2021-11-9 17:00

举报

0个回答

所属标签

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