
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 ![]() 在"System Core"中,找到"SYS";或者在上方搜索框中输入SYS快速定位。" J& \8 R, ~2 w" P- J 在"SYS Mode and Configuration"中,勾√ 上"Serial Wire",就是启用swd调试口,同时你会注意到引脚视图中PA14/PA13变成绿色,显示它的功能。左边GPIO字也会变色,表明GPIO选项里面也有更改配置。 ![]() * 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( } ![]() 5 `$ s6 G9 M8 p$ F+ s Code Generator里按照需求打勾即可/ Q8 ~+ i; C( S0 v8 H! B* k ![]() 点击"GENERATE CODE",生成代码。在工程代码的"MDK-ARM"目录下,使用MDK软件打开工程文件 硬件连接:: 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 GND ---------- GND. g" r) F( B' z% u8 ] 我们已经装好st-link驱动。直接点击编译。在点击下载烧录。就完成了。因为只是开启一个swd,所以板子不会有任何可见的变化。 1 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 ![]() 没有开启SWD调试,烧录代码会如何?5 M F2 W9 A; [ 如果我们在写代码时,忘记了开启SWD调试接口,代码已经烧录进去。芯片就会关闭调试接口,第二次烧录时候软件会提示连接不上芯片。按照一下操作重新开启调试接口: * H1 _9 ^& V9 i- N& }" E ![]() ( 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软件里重新编译一下; 3.按住开发板复位键不要松开,点击软件烧录按钮,在放开复位键,代码就能烧录到芯片。重新开启了调试接口。& 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 |