STM32G0系列提供了SWD接口调试,所以先要熟悉如何调试,接下来才能把代码烧录到芯片里面去。 p. h# q# Q3 D$ G$ S& N 4 F& I: f- M- ^2 u# S0 ]0 K& ] 首先我们先新建工程,如果不是官方开发板就点"start My project from MCU",选择对应的芯片型号。我这里选G071C8,进入工程。 ! m0 v$ S0 {. y 0 P2 w5 l* t5 {1 a 在"System Core"中,找到"SYS";或者在上方搜索框中输入SYS快速定位。0 ~; ?0 q- u1 p% S) R 在"SYS Mode and Configuration"中,勾√ 上"Serial Wire",就是启用swd调试口,同时你会注意到引脚视图中PA14/PA13变成绿色,显示它的功能。左边GPIO字也会变色,表明GPIO选项里面也有更改配置。. T3 S0 {2 A, D1 x4 `- l( @. Y % M% E. B8 z! Z) p 点击"Project Manager"—"Project",写上项目名称,项目保存路径,"Application Structure"选择"Basic","Toolchain/IDE"选择"MDK-ARM","V5"(版本根据你安装软件版本来填,在mdk软件-help-about能看到)。 4 q1 x0 Q7 M7 v/ l( I Code Generator里按照需求打勾即可. q1 H3 t5 ]% K4 U7 g6 C 点击"GENERATE CODE",生成代码。在工程代码的"MDK-ARM"目录下,使用MDK软件打开工程文件% I* [ |. b6 H1 h: ~ 硬件连接: ST-Link 开发板- K g: |7 A" i8 U3 s, K SWDIO ---------- PA14 SWCLK ---------- PA13- S( B5 M" l6 f- [$ f" f' ] VCC ---------- VCC- r% e2 \4 a* k1 N. y; i5 a/ R- P GND ---------- GND% ?4 n& J' F# Q; g 1 N. y/ ^# Q" Y0 x7 |4 S+ c 我们已经装好st-link驱动。直接点击编译。在点击下载烧录。就完成了。因为只是开启一个swd,所以板子不会有任何可见的变化。 为什么我这没配置时钟树呢?因为使用了芯片自带HSI。 5 S' e' A2 B! v4 b5 j3 h8 t9 v 没有开启SWD调试,烧录代码会如何? 如果我们在写代码时,忘记了开启SWD调试接口,代码已经烧录进去。芯片就会关闭调试接口,第二次烧录时候软件会提示连接不上芯片。按照一下操作重新开启调试接口: + x* P% y* G8 g& b $ t7 }, ?' y& x+ z) O( A& {( V 1.在cubemx工程里面添加上调试接口重新生成代码; 2.在MDK软件里重新编译一下; ; U9 P' q6 g2 ^1 Z" z3 N 3.按住开发板复位键不要松开,点击软件烧录按钮,在放开复位键,代码就能烧录到芯片。重新开启了调试接口。9 F" G9 R4 x4 |( X ————————————————. u7 W9 _6 N! A. q' i6 U9 K5 p 版权声明:SCCELE 0 |2 W/ S: b1 P2 e) s @% D# z/ x6 i |
STM32固件库分享,超全系列整理
STM32的CAN FD位定时设置注意事项
基于STM32将移植 SBSFU 到 STM32G070过程分享
基于STM32G030 RAM不够用经验分享
STM32G070在OLED上移植U8G2单色GUI
【经验分享】STM32 IAP+Ymodem功能实现(参考官方代码)
【经验分享】STM32的SPI问题
【经验分享】STM32 的加密实现
STM32G070—使用platformio+arduino
STM32G0-Platformio平台下使用libopencm3库