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

【学习指南】基于STM32G474软件平台安装与使用教程

[复制链接]
攻城狮Melo 发布时间:2024-11-22 12:07
软件平台安装与使用$ ~" `. D9 [9 n3 ^) r8 C
下面介绍如何使用STM32CubeMX配合keil来编写STM32G474VET6的程序。STM32G4系列其他型号配置过程基本类似。6 i6 O+ j  l# L
首先下载安装 ST 官网 STM32CubeMX 工具。建议下载都为最新版本。安装过程默认即可,但需要记住安装路径。本教程 keil 使用 V5.38 版本 ARM 5 编译器。, p& g# ^! ]8 [; C

6 N- ]* F: z; U1 ~8 F! j一、STM32CubeMX 的安装
" H* T5 X: e# v1 U8 }( p从官网下载最新版本的 STM32CubeMX 安装包,根据系统选择。. P  R3 N' E! a% V
' O. D1 s3 x$ K5 v$ E

; M$ k% m) C( u+ T& W: a
微信图片_20241122120721.png

; I; s! P+ \  e4 R: y7 s0 A
▲ 图 2.1.1 官网下载安装包
1 E; p) v. S8 O$ C& D8 O7 p! x: r
0 U" B) `* t& e; L" i9 y# @
- z5 F3 J7 _4 ~/ O9 Z
1. 软件下载后为 zip 压缩包,解压后得到安装文件;
2 r: g1 g7 x. K- ?6 V2. 点击 Next;
6 y2 B! |3 k4 i7 P0 m0 g9 l
微信图片_20241122120719.png
$ s  `$ S+ \( q8 M& S

) ~5 P7 l# o: P: ]8 I, h3 Y& q
▲ 图 2.1.2 Cubemx 安装步骤 1
2 z& T2 Y1 p" P2 _3. 勾选,然后 Next;
4 h9 d& f* E0 D0 m1 S
微信图片_20241122120716.png
9 S4 j# ~: f; c) i

8 p9 U' L7 S# ~5 r# z4 w2 q3 T
▲ 图 2.1.3 Cubemx 安装步骤 29 b$ @. A0 S- m. O
4. 勾选,而后点击 Next;
$ N: _+ a4 G, Q* h$ y7 y
微信图片_20241122120714.png
2 i* g$ l/ |8 j$ f& Q& R

' D2 h4 ^2 t- O6 h' g* ?' s
▲ 图 2.1.4 Cubemx 安装步骤 39 B7 S; C# {6 D) E: K+ p
5. 选择合适的安装路径,点击 Next;(若路径未创建,会提示路径将被创建)
  m$ |! M3 m9 f9 n- G, l3 |
微信图片_20241122120712.png / |# i5 ~0 W; @) ?2 _& _

& k( I' Z6 a7 U# V2 D8 R8 z
▲ 图 2.1.5 Cubemx 安装步骤 4
8 }2 b) v; ~2 n. e6. 根据需求勾选,点击 Next;

& C3 P+ F9 W3 m5 R
微信图片_20241122120709.png $ s  n# l. K: ^" z

4 S9 K. m8 D: `, G7 T5 y: i1 w
▲ 图 2.1.6 Cubemx 安装步骤 5
6 r4 a6 v3 d* H' k7. 程序自动安装,安装完成后,点击 Next;

7 D( h; t' l, X& I8 A0 ~# M
微信图片_20241122120707.png
# I( N, |- _6 K

. r8 Y: n1 B, V, J) q  l
▲ 2.1.7 Cubemx 安装步骤 6
$ J! u0 {# h- l8. 提示安装成功和一个卸载程序被创建在安装目录的 Uninstaller 文件夹中,点击Done;

! {0 q9 d( N" k; a
微信图片_20241122120705.png ) p* U) r  O; n/ Z
2 c' O! w/ G# W9 C% H) v' J
▲ 图 2.1.8 Cubemx 安装步骤 7
/ ~, U2 c1 O% X- H8 C' n

: E+ S6 C% o1 }9 |7 g8 u% c  S
9 k  Y6 l! n- S/ S3 a9 I4 R

, p" f4 @1 ~( x7 C& O) @二、Keil MDKV5.38 的安装
6 G$ k2 ^2 w6 j3 T" _1 h1. 从 keil 官网下载 V5.38 版本的 MDK 安装包。
& N/ b: a* [" l
微信图片_20241122120703.png
  ]% j, `+ U1 R$ w  ~8 Q/ f
! [: e( E" y1 R0 |9 M' N
▲ 图 2.2.1 Keil 安装步骤 1
' Q  t* G- K; w5 P9 l1 ]6 n  {
微信图片_20241122120700.png . w6 ]5 d  O! W! t) K4 _
0 `, `6 }/ _, p- l6 Z
▲ 图 2.2.2 Keil 安装步骤 2
- z9 J9 S( k3 D) w% F1 b/ i6 g2. 选择安装路径

5 n% U" I' D5 w. n. ~6 p9 e
微信图片_20241122120658.png - g  d- @# A8 X

$ p7 ^1 d4 G4 ~  v& x' Y0 E
▲ 图 2.2.3 Keil 安装步骤 3
0 o! t/ T4 A; z; {! T% ^& K8 R3. 填写用户信息

0 i$ Q# h1 h; D: h
微信图片_20241122120656.png
1 W0 \0 s* k0 `" w# j: U% _+ @% b  H1 P

2 C3 v7 S. @5 u# z
▲ 图 2.2.4 Keil 安装步骤 4
1 M. |: z5 Q  F8 c8 A4 l+ E4. 等待安装完成
* ]1 \" @; u( @1 ^$ G8 F
微信图片_20241122120651.png 4 U5 i) s3 X" T* u2 A
2 I, b- _( k" M8 h4 ~& q
▲ 图 2.2.5 Keil 安装步骤 5  i! @% I! u- J9 v
5. 安装结束$ A# s$ w* ^. ?9 s# X( n; H, K
微信图片_20241122120648.png ! }3 Z- V0 s$ U; o) D

4 a% u' d& T/ y9 P3 a' q# p# I9 U
▲ 图 2.2.6 Keil 安装步骤 6
. @! v3 b8 l. }% j, t( F/ l$ ^
三、安装 G4 的支持包
0 {7 F8 I& l3 }" E; ~7 B" ^  K1. 打开支持包管理器。
  ]5 V" L# L2 e+ s1 U7 m7 ]0 H
12.png * K: ]# k% E2 r: M' o% D% |+ w" s
; R2 \2 _& S9 O& ]
▲ 图 2.3.1 Keil 支持包安装步骤 1
& r# q3 ?4 T, `! K
2. 找到 STM32 系列单片机,找到 STM32G4 系列,找到使用的单片机型号,下载安装支持包。
4 E: \% Z4 W6 G# S% O2 F6 Q2 y0 X* q
微信图片_20241122120644.png 5 O8 v/ |' \3 ?2 ^7 ?

1 a8 l: e* h  _! P8 G8 r( N. C9 F# F2 c' {
▲图 2.3.2 Keil 支持包安装步骤 2

7 Q1 ^1 b& l+ @& |" B4 y
0 C1 q+ v9 L: b) m四、使用 STM32CubeMX 创建 MDK 工程& ?& N% ]" r* h, `. X8 _
以建立一个简单的 LED 闪烁工程为例,介绍如何通过 CubeMx 创建一个 Keil 工程。/ }) m: C# l) j3 P& C8 E6 t! T
1. 打开 CubeMx,点击 File,选择 New project。

2 y3 {  S& X# @: D
微信图片_20241122120641.png 0 y( {5 N0 j; \1 k
# j4 z1 W7 [8 ?  z6 b+ U; n9 K
▲ 图 2.4.1 Cubemx 新建工程
/ _4 ^2 \1 B. J: `  F& f# v2. 通过填写型号寻找单片机,选中具体型号封装双击建立新工程。
" m8 M( c( \! f( B7 I  v' k0 d
微信图片_20241122120639.png : Z8 X( x  X, E$ k. P6 ?/ M# Q* s

; Q5 U) P9 x0 B4 L! l
▲ 图 2.4.2 选择芯片
- U8 S1 I! Y. |6 r7 K9 W3. 配置调试方式,此处选择使用 SWD 调试方式。
4 W/ X3 u1 X: h5 {2 q: ]  @
微信图片_20241122120636.png + H; V# W1 Q* p
* R3 A+ E2 x( H% T
▲ 图 2.4.3 配置调试方式2 K' g3 d/ P5 m
4. 配置外部时钟源。此处使用外部高速时钟,使用无源晶振。
0 O/ G3 A$ o; \+ ]
微信图片_20241122120633.png ! I, d9 g5 H1 g. O4 s6 `' {9 P
1 [! k8 I$ ~- ]# ~6 Y& L% ?& N% v
▲ 图 2.4.4 配置时钟源
1 D' k. S1 n2 P# }5. 点击芯片引脚将所需引脚配置为输出模式。

  F3 Q2 g2 [$ e+ K! p
微信图片_20241122120631.png , p5 H% v' P4 |+ N. l2 }& {

% l9 R5 x" `1 u1 @2 J
▲ 图 2.4.5 配置 IO
, X4 \5 _' I+ x' G: R/ P6 }6. 配置时钟树。将外部时钟输入作为锁相环输入,配置锁相环参数,将锁相环输出作为系统时钟。
5 [3 N' e- h; w
微信图片_20241122120629.png
! m2 ^; s* W$ u# U

1 P2 j& t& p# V8 X" m1 J% ^' k
▲ 图 2.4.6 配置时钟树
, a% b' I& O$ ?2 `7. 设置工程名称,路径,使用的 IDE 以及 IDE 版本。

' {9 N9 N% y+ `- _4 p7 Z8 i3 B
微信图片_20241122120627.png , \! C: f/ D+ r: C9 a1 c  J3 f

5 ?" E; N5 E3 N# N; g/ q  E8 p
▲ 图 2.4.7 配置工程设置
/ @: B" Y$ }6 x& [6 |% ~5 `, `8. 设置生成代码库。选择 Copy only the necessary library files。该选项为添加用到的库文件。默认选项会在工程里生成所有的库文件。勾选 Generate periphera initialization as a pair of ‘.c/.h’ files per peripheral。勾选该选项会将每个外设的初始化代码分文件生成,如不勾选会都生成在 main.c 文件中。4 @9 P4 i" z9 V0 O- I0 k; v1 J1 s
微信图片_20241122120625.png
0 ~3 j9 ?1 R2 J; _

& n5 j6 j5 f) t9 T1 T( s8 S
▲ 图 2.4.8 配置生成设置
; J( e0 L8 S8 B
9. 点击 Generate Code 生成工程代码。
6 Y7 C; B: y1 j% E
微信图片_20241122120622.png 7 n. H1 p% d3 ?( l8 z; }, j; L
5 Y4 o2 c9 @+ O) m5 \
▲ 图 2.4.9 生成代码
! ~8 A5 F; n- T) O. l/ r
五、使用 Keil 进行程序下载与调试2 l' _0 Q7 H# n
编写完成的程序要下载到单片机中运行。ARM 的调试运行需要仿真器,以使用板载的DAP 仿真器为例进行该程序的仿真运行。
: c4 w" c# m, U7 d) r+ k8 a首先需要进行仿真设置。点击 Options of Target,调出设置窗口。在 Debug 选项卡下选择使用仿真器,以及所用的仿真器。CubeMx生成的工程默认选择使用仿真器,使用ST-Link,需修改。

8 c) ?' P" B' v- \$ W
13.png
* ]  P) |, O0 Q$ v

  J: c& P; F) G* B; l9 l' x
▲ 图 2.5.1 设置仿真器
. [# ^3 o2 T8 K8 M
4 f" Q" c# }' {+ ^: [* E

4 F8 b$ [5 w9 e& _5 l选择仿真器后点击 Setting,对仿真器进行具体设置。选择 SW 调试方式。
) Q2 t: p; {5 j" s6 c
微信图片_20241122120618.png
1 C- S6 V2 B; C& g% {
3 t! u5 i6 D7 C+ {4 d  {
▲ 图 2.5.2 调整 DAP 调试方式
# N4 ^1 i& y2 M4 v7 V$ r选择 Flash Download 选项卡,勾选 Reset and Run,下载完成后自动复位运行。检查 Flash大小是否正确,如不正确或者未选择 Flash 需手动添加。
. s4 ?; |7 V" U) V" v
微信图片_20241122120616.png $ i* V; n/ U6 ]9 S

+ [* x. {9 G3 }# s
▲ 图 2.5.3 确认 DAP 的 FALSH : {0 _% |$ \  u6 y" `! L
选择设置完成且连线正确后点击 Download(F8)下载程序,下载成功后应能成功观测到对应 LED 闪烁。
  ~+ @  V2 V4 V+ t7 w, a7 B
微信图片_20241122120614.png
  Y% M7 L2 S8 t: M9 z" Y

8 a" B+ ?4 G5 C: Q. h- B
▲ 图 2.5.4 下载程序
! u- q4 k8 r5 U点击 Start/Stop Debug Session(ctrl+F5)进入调试模式,可对程序进行单步调试,断点调试等操作。在调试模式中再次点击可退出调试模式。

% t0 _; m7 f: p, W, W2 |+ g
微信图片_20241122120612.png ; ]) u1 d. i- [' @2 ]3 z, L
) {9 y& h, d( O# g! P
▲ 图 2.5.5 进入调试模式
9 v2 F2 n! c8 S0 A% N( X3 D通过调试工具可控制程序的运行,停止,复位。也能够进行单步运行(执行到下一条可执行语句,遇到函数调用会进入),运行到下一个函数(函数调用不进入),运行到跳出当前函数,运行到光标行。
! S2 j" }; T5 S
微信图片_20241122120610.png 8 G+ v7 Q2 k; d: k- j4 `1 i
! K  A% ]3 R/ z# i
▲ 图 2.5.6 调试模式基本操作, e# i/ T9 s9 C* I9 O1 ^: A6 j
在代码行号前的灰色区域单击可在此处打断点,程序运行到断点位置处会自动停止。
( Z- X& i' k! W% Y  ?3 k3 J
微信图片_20241122120607.png 6 \* D5 U1 H- W  L; F9 u) S3 Q

& t  C4 l  @, z% J9 ?: i5 [- Q
▲ 图 2.5.7 断点调试
5 i- r9 {" y' y6 U8 J  w5 m在观察窗口可观测指定的全局变量当前值。通过观察窗输入可添加变量,或者在代码中右键变量会出现将变量添加到观测框的选项卡。

' [& q; r( b- c
微信图片_20241122120603.png 6 ^, h# u( `5 P. ]8 P. Y
, o/ P# [3 l4 M
▲ 图 2.5.8 变量观察窗
& ?# |, q0 t; a5 b; a4 Y- K通过右键加入:
6 y. J/ F' ~3 l! D* f
微信图片_20241122120554.png
: D( o( H+ E) _0 {/ O$ B
9 A' }  A8 M# {. `% f, p+ N7 X3 A7 G
▲ 图 2.5.9 添加观察变量

0 |8 s0 r' o; T' n5 p
如有侵权请联系删除
. e+ B) j3 C' n' d& s
$ l8 ]( i8 h8 r! T2 P) G/ @
转载自:AI电堂
8 Y2 N6 n! j( ^  }; D1 L) j$ w" Y. m

* U. E2 k. u, n) L
8 q- l7 M5 n+ a. r

% D% d! t; q" Y! ~0 D% z# J
收藏 评论0 发布时间:2024-11-22 12:07

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版