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

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

[复制链接]
STMCU小助手 发布时间:2021-11-9 17:00
STM32G0系列提供了SWD接口调试,所以先要熟悉如何调试,接下来才能把代码烧录到芯片里面去。5 t8 I0 R" F* L; Z  Q1 ?1 d

7 @# H, b! d6 Y1 F首先我们先新建工程,如果不是官方开发板就点"start My project from MCU",选择对应的芯片型号。我这里选G071C8,进入工程。
$ s+ }1 v& n4 ]2 t* J  s6 B  ^1 O( g3 p1 ^8 C6 K4 ]4 n& s* Q
20200419154927717.png

' t& O! ~# f. e6 Y* K2 k1 g: [( |7 C) n/ Z5 I8 r
在"System Core"中,找到"SYS";或者在上方搜索框中输入SYS快速定位。
; S! Z  i5 |9 m3 M$ B$ N' g在"SYS Mode and Configuration"中,勾√ 上"Serial Wire",就是启用swd调试口,同时你会注意到引脚视图中PA14/PA13变成绿色,显示它的功能。左边GPIO字也会变色,表明GPIO选项里面也有更改配置。- v& }5 n- G% Z* q* _& |$ h
20200419155714752.png

8 @9 v+ K+ ~8 g# \% {
) n# N8 I5 K: n+ r( F9 K 点击"Project Manager"—"Project",写上项目名称,项目保存路径,"Application Structure"选择"Basic","Toolchain/IDE"选择"MDK-ARM","V5"(版本根据你安装软件版本来填,在mdk软件-help-about能看到)。
# z  N4 u* A7 F5 {6 x7 F: ~( u' [5 T7 z" i! M
20200419160441447.png

1 A% J3 X% D6 B1 d7 ^) {! q3 |9 ~* j" H; s
Code Generator里按照需求打勾即可+ _8 v( p0 G* k! q3 e" Y
/ G; e. n# L- [: y
20200419160655202.png

! x# Y6 I/ X% F- r  N( w- s7 a
$ v) \. H7 j" @/ B点击"GENERATE CODE",生成代码。在工程代码的"MDK-ARM"目录下,使用MDK软件打开工程文件。
  }0 V2 V' o( m  P: g: o硬件连接:
  p; G% e* j& `& D; _ST-Link                开发板
, g' o' M( @: L' s- Y, `) L( ?4 K1 [8 k" r  S" U4 F
SWDIO ---------- PA14* }, Y& ^+ K- e8 Z6 B
8 n: V  N1 M& S- h; }6 ^4 s" ?
SWCLK ---------- PA13$ H; P7 T0 v( x1 I

+ I/ y* |1 b5 n! q( f& @4 Y* e  VCC    ----------  VCC$ _" p% m0 ]; o" d( z& x6 N8 T: u
+ F% }* \0 l- ?8 n( ^
GND    ----------  GND
* `* `# Q. ~( ]6 `6 {* c+ k  d$ f2 q
在上一篇文章中给,我们已经装好st-link驱动。直接点击编译。在点击下载烧录。就完成了。因为只是开启一个swd,所以板子不会有任何可见的变化。; b% k" J! I  l/ ]8 j
为什么我这没配置时钟树呢?因为使用了芯片自带HSI。
) y# t: m( A8 f- \; C" r. y. ?2 D7 X' C! [: y8 L1 E. K) ~( D- U
20200419161832300.png
; B8 {: N# h2 g$ |
+ o' e: o" e! C. @$ f
没有开启SWD调试,烧录代码会如何?
$ m2 F7 Y0 G5 o, ^2 A
+ B! k& X7 x: v5 h- w  U" f如果我们在写代码时,忘记了开启SWD调试接口,代码已经烧录进去。芯片就会关闭调试接口,第二次烧录时候软件会提示连接不上芯片。按照一下操作重新开启调试接口:
7 ?' [- p9 b" m" u2 J# b8 Y* m$ t: R$ f8 K
20200419163306997.png
- H5 ]3 }) ~5 w; F

+ K9 K3 A  R7 ~  U1 T4 t1.在cubemx工程里面添加上调试接口重新生成代码;
# a# X9 k7 t% f( j, q5 O$ d# T* }$ |) _2 U/ w
2.在MDK软件里重新编译一下;  J' I+ V, n: n& e+ `. ^* I% s5 K) k
. p" }3 f  |, x
3.按住开发板复位键不要松开,点击软件烧录按钮,在放开复位键,代码就能烧录到芯片。重新开启了调试接口。
7 z1 w1 ^0 y2 E% b: u2 [! P* c4 j0 B# O
7 I$ \* B# D& }) n( Z* b9 A7 |: y
- l, H+ u& u" S; i
收藏 评论0 发布时间:2021-11-9 17:00

举报

0个回答

所属标签

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