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

STM32G0学习手册——使用SWD接口进行调试 (HAL库)

[复制链接]
STMCU小助手 发布时间:2022-10-31 11:52
STM32G0系列提供了SWD接口调试,所以先要熟悉如何调试,接下来才能把代码烧录到芯片里面去。1 d7 p/ C5 K! Q7 c# Q
; z' m2 {+ S, n8 ]# V3 M
首先我们先新建工程,如果不是官方开发板就点"start My project from MCU",选择对应的芯片型号。我这里选G071C8,进入工程。$ W! v+ M' k8 j% z! O& S3 a
6 O* r: R# j9 v% n
20200419154927717.png , x- s. U/ h/ s5 |& G4 Q

3 t7 N- Q. o' n7 _# U2 x8 \% a 在"System Core"中,找到"SYS";或者在上方搜索框中输入SYS快速定位。" J& \8 R, ~2 w" P- J
在"SYS Mode and Configuration"中,勾√ 上"Serial Wire",就是启用swd调试口,同时你会注意到引脚视图中PA14/PA13变成绿色,显示它的功能。左边GPIO字也会变色,表明GPIO选项里面也有更改配置。
5 m0 O- z6 s" [) {4 o8 k% r/ `
2 ~: q9 a; z+ p, g 20200419155714752.png * F; S, r; l% x3 z# u
* v6 G6 V6 t, T" g- M2 F0 W
点击"Project Manager"—"Project",写上项目名称,项目保存路径,"Application Structure"选择"Basic","Toolchain/IDE"选择"MDK-ARM","V5"(版本根据你安装软件版本来填,在mdk软件-help-about能看到)。5 x4 y, L7 |+ ?6 |
5 U% F7 N7 L' {# i( }
20200419160441447.png
* B. H- a% C8 U' J5 x6 }2 b5 `$ s6 G9 M8 p$ F+ s
Code Generator里按照需求打勾即可/ Q8 ~+ i; C( S0 v8 H! B* k

* _+ k3 r- ]3 f 20200419160655202.png ' W  ?% n" U% _

' x8 l/ g3 \- j& R+ T5 C点击"GENERATE CODE",生成代码。在工程代码的"MDK-ARM"目录下,使用MDK软件打开工程文件
6 @) [; ^* b  f. B硬件连接:: s; [% \5 D+ j) t4 Z' ?% F, H9 b
ST-Link                开发板/ e! k/ P6 G# {, r3 w0 @5 C: g
SWDIO ---------- PA140 {* R7 J3 u7 w  w/ N. ~- V$ t4 n
SWCLK ---------- PA13; y5 {- W  ]6 E$ p' l
VCC    ----------  VCC
1 J# C  {; U& a* b* r GND    ----------  GND. g" r) F( B' z% u8 ]

$ r8 ?2 Q7 V9 q# \) M& T; D- S我们已经装好st-link驱动。直接点击编译。在点击下载烧录。就完成了。因为只是开启一个swd,所以板子不会有任何可见的变化。
$ B8 ^( H5 ~# |- l: q1 o# v9 M" F  `' \9 n/ u* s4 s) I
为什么我这没配置时钟树呢?因为使用了芯片自带HSI。( j: z8 x  G$ s2 Y
3 \( a+ Y2 }5 J! n9 T' q0 B6 h
20200419161832300.png
" g9 W5 ^. w$ C. [9 X  T9 J8 A
  @' U; J5 ]+ }" O# L, y% n9 @没有开启SWD调试,烧录代码会如何?5 M  F2 W9 A; [

& T& ^5 \6 T7 z如果我们在写代码时,忘记了开启SWD调试接口,代码已经烧录进去。芯片就会关闭调试接口,第二次烧录时候软件会提示连接不上芯片。按照一下操作重新开启调试接口:
; m8 b$ ~: n6 v2 f  [+ X5 W* H1 _9 ^& V9 i- N& }" E
20200419163306997.png
* k* i. c2 Z; J4 a$ o9 t' U. i( d8 L8 a* N  J5 D; W! z6 y9 e8 H
1.在cubemx工程里面添加上调试接口重新生成代码;7 W" v6 E' a" y; W0 Q9 i
& H" e/ e* E. J
2.在MDK软件里重新编译一下;
* ~  O: C8 y& l& |: l- G
3 a$ X6 ^) R7 Z6 _4 Y3.按住开发板复位键不要松开,点击软件烧录按钮,在放开复位键,代码就能烧录到芯片。重新开启了调试接口。& y. N. ^$ I' p; o, C' g3 M
————————————————+ ^  D' g* [( y6 j+ k1 C
版权声明:SCCELE7 `8 `6 Q9 w! ~. \9 \8 c
4 x; B+ e( O' z1 C3 c, F
$ G5 W6 d  K, v7 V8 k
收藏 评论0 发布时间:2022-10-31 11:52

举报

0个回答

所属标签

相似分享

官网相关资源

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