
STM32G0系列提供了SWD接口调试,所以先要熟悉如何调试,接下来才能把代码烧录到芯片里面去。) a Z3 l1 W; G 首先我们先新建工程,如果不是官方开发板就点"start My project from MCU",选择对应的芯片型号。我这里选G071C8,进入工程。 ; E% h9 K) N% g) k/ ~0 S8 j" x1 j5 I ![]() 在"System Core"中,找到"SYS";或者在上方搜索框中输入SYS快速定位。% j; j4 w! n7 ~0 i) W, C$ l, X 在"SYS Mode and Configuration"中,勾√ 上"Serial Wire",就是启用swd调试口,同时你会注意到引脚视图中PA14/PA13变成绿色,显示它的功能。左边GPIO字也会变色,表明GPIO选项里面也有更改配置。+ x! n6 t' ]6 g0 ^( B% ]" J) t ![]() 0 q0 w* o5 c6 b. I4 p& S/ v# R. b 点击"Project Manager"—"Project",写上项目名称,项目保存路径,"Application Structure"选择"Basic","Toolchain/IDE"选择"MDK-ARM","V5"(版本根据你安装软件版本来填,在mdk软件-help-about能看到)。 6 d& u! {, C; T2 c4 G8 e2 c ![]() Code Generator里按照需求打勾即可 9 K$ Z7 u6 M8 W/ t2 \+ ~ ![]() @, h& z% F* T% J9 x 点击"GENERATE CODE",生成代码。在工程代码的"MDK-ARM"目录下,使用MDK软件打开工程文件。1 T: A8 w$ t3 J) D0 d 硬件连接:; D. D3 u$ U; k/ P/ k1 P ST-Link 开发板( _/ o T2 W: `7 I; c* U) @, H" K SWDIO ---------- PA14 n( l* u. W# [# F' ~ % X& o7 f3 M$ \3 P% u( p; l' g SWCLK ---------- PA13 $ A7 O; `1 U5 R0 X- E VCC ---------- VCC/ V/ P: l$ e" h6 s: Q; [. z% \' ~ 5 {+ ^* a! \2 n7 ~- E& K GND ---------- GND3 i7 _% C# `7 V 在上一篇文章中给,我们已经装好st-link驱动。直接点击编译。在点击下载烧录。就完成了。因为只是开启一个swd,所以板子不会有任何可见的变化。 为什么我这没配置时钟树呢?因为使用了芯片自带HSI。1 A2 [/ Y9 o0 x ( ^# l6 T% |# P( h7 [0 c. P" y4 x, q8 u ![]() " j0 B9 @ k/ D7 b 没有开启SWD调试,烧录代码会如何?# o! F$ W8 t% W t+ v 如果我们在写代码时,忘记了开启SWD调试接口,代码已经烧录进去。芯片就会关闭调试接口,第二次烧录时候软件会提示连接不上芯片。按照一下操作重新开启调试接口: ![]() 1.在cubemx工程里面添加上调试接口重新生成代码; & R' x( @& D4 k7 W2 V, a 2.在MDK软件里重新编译一下; 3.按住开发板复位键不要松开,点击软件烧录按钮,在放开复位键,代码就能烧录到芯片。重新开启了调试接口。 $ {. j# n G F. [3 F( h! O 1 n/ _' w- @, W# [- q . K6 i7 K* U5 U9 B2 B* A% ` |