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

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

[复制链接]
攻城狮Melo 发布时间:2024-11-22 12:07
软件平台安装与使用
2 `( c% A1 _# {' u- R) [1 F下面介绍如何使用STM32CubeMX配合keil来编写STM32G474VET6的程序。STM32G4系列其他型号配置过程基本类似。
) A& P; A' r% h5 J2 l首先下载安装 ST 官网 STM32CubeMX 工具。建议下载都为最新版本。安装过程默认即可,但需要记住安装路径。本教程 keil 使用 V5.38 版本 ARM 5 编译器。
  c* X/ q3 F5 H, x
9 m7 s9 `* r- K- |
一、STM32CubeMX 的安装
  }: m  p2 z5 x/ s从官网下载最新版本的 STM32CubeMX 安装包,根据系统选择。
3 J7 a6 i" f3 l8 I: Y  z( _
. i0 ^% D2 t  U* d: |+ f3 w4 S

# _- F; t  D7 [
微信图片_20241122120721.png

3 Q5 b) ~( V) e4 v7 f! ~
▲ 图 2.1.1 官网下载安装包
: ^) Y9 X; t4 H8 B' i' C, U8 C4 D5 H! a7 g$ x: z7 P
( k9 s. i9 Z+ W) w6 W
1. 软件下载后为 zip 压缩包,解压后得到安装文件;9 M5 g! p+ t2 a( c
2. 点击 Next;

' U" g" j9 @( m% L2 h7 X
微信图片_20241122120719.png ( [7 [+ H4 Z& C0 g4 P! ^9 H
  T. \7 v4 T0 N* }- a4 C. C
▲ 图 2.1.2 Cubemx 安装步骤 1
2 J6 o6 J/ i9 M& }7 C3 V3. 勾选,然后 Next;

; f* T& J5 ~/ C6 r
微信图片_20241122120716.png / F* e6 n, w6 W
$ k+ ?% x; {& K4 \0 |* P& T
▲ 图 2.1.3 Cubemx 安装步骤 2$ C: {5 j" \9 _, c" z4 ?( E
4. 勾选,而后点击 Next;
9 P  S2 s1 X/ J' K# L6 A1 ]
微信图片_20241122120714.png / j* p5 k7 X1 I* I

4 g7 y$ Y3 f, X) m0 u
▲ 图 2.1.4 Cubemx 安装步骤 3* z  M4 I0 _  K9 Y" l! z
5. 选择合适的安装路径,点击 Next;(若路径未创建,会提示路径将被创建)

$ u5 _5 O2 ?5 h# T: D
微信图片_20241122120712.png 3 u: W! }! S0 i$ Y
$ y+ x7 R* x' v) Y$ T. Q
▲ 图 2.1.5 Cubemx 安装步骤 4( S, C  a) ?# s7 Y! ~
6. 根据需求勾选,点击 Next;

8 D0 l- A4 }3 R6 U% e( A! M, a
微信图片_20241122120709.png 3 |3 D, X7 t, n' u% k0 _+ u$ P- u* W
3 x  p/ L& Q* K7 e- s3 e
▲ 图 2.1.6 Cubemx 安装步骤 5
' O1 ~% W# ~/ x2 E7. 程序自动安装,安装完成后,点击 Next;
! }- Z& J# F9 r( E( u1 d
微信图片_20241122120707.png   h5 ?+ n( M* n/ g+ M: S/ L
( u: M- h7 @% h3 o+ H
▲ 2.1.7 Cubemx 安装步骤 6( n: P+ m4 Q- ^5 C
8. 提示安装成功和一个卸载程序被创建在安装目录的 Uninstaller 文件夹中,点击Done;

4 k1 {: i* t& ~: ^5 d! x
微信图片_20241122120705.png 4 i! J5 v/ Z: a) M
# ?+ y/ `1 i0 a" A4 ^" Z5 u, B
▲ 图 2.1.8 Cubemx 安装步骤 7' _" x4 H% u3 ]" w6 }

) Q+ d2 w" v3 ]) o9 Q  w$ P

1 y$ f# [' d* _6 T

8 E1 x3 o7 e5 ~4 a二、Keil MDKV5.38 的安装: u' F5 @1 C3 n2 h
1. 从 keil 官网下载 V5.38 版本的 MDK 安装包。

5 n$ n1 O+ S, A4 V
微信图片_20241122120703.png ; n2 `) w6 {) f$ e7 O+ {9 g
2 t. l0 L5 W& r& X# c7 j
▲ 图 2.2.1 Keil 安装步骤 1

* I" s, D# d( ]9 m, Y; L) P( u
微信图片_20241122120700.png 1 h. a: W# M# ~, J1 ]6 @

3 i4 W% b0 v& }4 b% K; s1 m
▲ 图 2.2.2 Keil 安装步骤 2
' W1 t9 a- A9 U# z# K: }2. 选择安装路径
; s' E2 s9 B2 j) s) O# J6 s) }
微信图片_20241122120658.png
0 J& E+ k; r1 b* k* _8 z
* k) Y& B( @$ p1 e4 o
▲ 图 2.2.3 Keil 安装步骤 3
& P1 M" B# J, k& J3. 填写用户信息

) n0 e. H  n. w! s( j" f
微信图片_20241122120656.png
$ c7 l& R! D$ v

2 e. v4 c: M+ j2 a" V
▲ 图 2.2.4 Keil 安装步骤 4
! m1 j1 x1 U/ t% ~/ S5 I4 l4. 等待安装完成

4 z4 L6 y, H+ y" Z; Y- P6 A) z
微信图片_20241122120651.png , B( w$ b1 a( E7 P

2 [- C6 ?  n9 d; j' A# Z
▲ 图 2.2.5 Keil 安装步骤 5; B" }1 n) f9 R' l  o
5. 安装结束8 a# J  ?3 Y8 l  s& O
微信图片_20241122120648.png
5 l5 ~, b+ ]" `' a" _+ P5 T
7 @, x% E/ L7 J. z
▲ 图 2.2.6 Keil 安装步骤 6
7 u+ r! a- M5 U; t
三、安装 G4 的支持包1 B9 O8 v# C! Z2 Z5 U0 p$ A7 K
1. 打开支持包管理器。
5 o$ T  b5 C4 T3 _+ w. E6 M3 P
12.png ) h( c# }! h+ ]0 v# c% K
( `/ r+ H) E2 ^* v
▲ 图 2.3.1 Keil 支持包安装步骤 1

1 G* _! z3 X' V1 w3 A5 Y2. 找到 STM32 系列单片机,找到 STM32G4 系列,找到使用的单片机型号,下载安装支持包。1 }( _0 S0 q% O0 p
微信图片_20241122120644.png ' R. z; c/ Q& ~8 N2 {
% ^. p. C1 y& X6 m

1 |! q- }0 H) f
▲图 2.3.2 Keil 支持包安装步骤 2

/ |) l8 n) ~6 `: L+ X' L/ @. C2 y/ w) P1 R0 \# p2 S: L: J5 q1 K
四、使用 STM32CubeMX 创建 MDK 工程1 S5 r: o  z; w3 Q; Q
以建立一个简单的 LED 闪烁工程为例,介绍如何通过 CubeMx 创建一个 Keil 工程。8 K2 o$ F2 d& W7 _( ?
1. 打开 CubeMx,点击 File,选择 New project。

, m" f/ Z* X2 z/ |: P6 S) y' U7 ?
微信图片_20241122120641.png
- z' K" X3 }! {0 U: K2 `

9 J+ i3 G  }7 @4 y9 a6 I" X# }, v
▲ 图 2.4.1 Cubemx 新建工程  j. g; H% [" }" Y% z
2. 通过填写型号寻找单片机,选中具体型号封装双击建立新工程。
$ c) _1 S. y' ?, [# c5 G2 C  c
微信图片_20241122120639.png 0 L# S$ i7 ?' `. W6 k& J
0 I' Y2 M# l5 a( i+ @
▲ 图 2.4.2 选择芯片
4 y; W4 N0 y; i7 D3. 配置调试方式,此处选择使用 SWD 调试方式。
9 ?& Y, j% n" V) B/ b
微信图片_20241122120636.png
0 @$ }/ u) d& R' w; v
. ]+ }; c/ w7 \( ^
▲ 图 2.4.3 配置调试方式
' V) W4 b# a6 g1 T4. 配置外部时钟源。此处使用外部高速时钟,使用无源晶振。

. ?0 Q; a, q5 x5 V& q8 O
微信图片_20241122120633.png
/ Q/ G2 Z1 |7 a/ R( F9 i, |( m

/ U$ g5 m1 ~9 H9 H  E. g
▲ 图 2.4.4 配置时钟源
: k# p, g% \0 o/ G8 ~5. 点击芯片引脚将所需引脚配置为输出模式。

# F3 Y. a$ S+ L0 l
微信图片_20241122120631.png ' S! [6 l2 e  `, V$ b
; A4 L4 g  P! ^# m
▲ 图 2.4.5 配置 IO
, D" H0 u' F' l5 H' O6. 配置时钟树。将外部时钟输入作为锁相环输入,配置锁相环参数,将锁相环输出作为系统时钟。

0 U1 W" s$ |- {- ~
微信图片_20241122120629.png
1 r9 w9 R; }7 Z
  [, g% y0 i" l# `% O, }
▲ 图 2.4.6 配置时钟树& t9 W) T, F4 r- c2 B  h
7. 设置工程名称,路径,使用的 IDE 以及 IDE 版本。

: S2 j: }3 c1 D  |# R: D: u- V
微信图片_20241122120627.png
9 R* |4 ?% W9 y1 ^4 f4 O. e* G# m
  K' j/ O2 T! G" o
▲ 图 2.4.7 配置工程设置
1 _. E8 p4 \/ _2 p; h; K, }+ @# \/ Y8. 设置生成代码库。选择 Copy only the necessary library files。该选项为添加用到的库文件。默认选项会在工程里生成所有的库文件。勾选 Generate periphera initialization as a pair of ‘.c/.h’ files per peripheral。勾选该选项会将每个外设的初始化代码分文件生成,如不勾选会都生成在 main.c 文件中。  ^& d; p5 O+ z; L
微信图片_20241122120625.png
" u( ~& y& o' b' P' o
# V! v. X6 i) e
▲ 图 2.4.8 配置生成设置
* c& s! S  |' S) ?) c6 i: t
9. 点击 Generate Code 生成工程代码。
# r5 C, p' w  L
微信图片_20241122120622.png
. {4 \6 p: p- f" W, Z; H

5 O2 W4 Y, @* W3 H" N8 G0 ]
▲ 图 2.4.9 生成代码

! Q- f- P; n$ \9 E五、使用 Keil 进行程序下载与调试
  f9 ~! e  W0 I. V4 O编写完成的程序要下载到单片机中运行。ARM 的调试运行需要仿真器,以使用板载的DAP 仿真器为例进行该程序的仿真运行。- q# F* r' O$ o& `. R
首先需要进行仿真设置。点击 Options of Target,调出设置窗口。在 Debug 选项卡下选择使用仿真器,以及所用的仿真器。CubeMx生成的工程默认选择使用仿真器,使用ST-Link,需修改。

: V. }8 L  c) X9 S: ?
13.png 9 L' Q  }# R- T2 @5 w
1 N6 h3 O* A" P. e6 h
▲ 图 2.5.1 设置仿真器$ ?& B; L3 E$ H9 N0 E: `$ s9 a

( ?4 V( D7 j$ P8 w$ b7 s/ y/ z$ ]
6 \* N5 ?( a3 q
选择仿真器后点击 Setting,对仿真器进行具体设置。选择 SW 调试方式。
8 U9 v0 Y" u2 F4 |' ~6 I  Y0 e  Q5 F
微信图片_20241122120618.png $ W' f. n4 r* i2 g$ L' ?/ t

: Y2 ^' v5 D* M
▲ 图 2.5.2 调整 DAP 调试方式
; o% X- [- v1 ~' m! G" |& ^4 M选择 Flash Download 选项卡,勾选 Reset and Run,下载完成后自动复位运行。检查 Flash大小是否正确,如不正确或者未选择 Flash 需手动添加。
1 S$ v% p( h, H5 L8 ?( j. H. V
微信图片_20241122120616.png ' K9 Y. |4 [7 ~3 X1 g
- p, ^  G0 R' p2 Q. i$ x
▲ 图 2.5.3 确认 DAP 的 FALSH
) u4 c1 b+ C* M0 h选择设置完成且连线正确后点击 Download(F8)下载程序,下载成功后应能成功观测到对应 LED 闪烁。
; y8 M0 {7 k3 {$ x% d
微信图片_20241122120614.png ! i9 f# h/ v* Q. L" T7 t% w% p
) `+ [7 t6 m0 U' ^* V* }
▲ 图 2.5.4 下载程序3 y2 u* A! y- C# ?# V
点击 Start/Stop Debug Session(ctrl+F5)进入调试模式,可对程序进行单步调试,断点调试等操作。在调试模式中再次点击可退出调试模式。
: B% v9 h5 j6 d, s( W
微信图片_20241122120612.png & v9 ?% P) }$ m5 k

& f" X9 N. R% J7 g
▲ 图 2.5.5 进入调试模式$ z/ }( D& _5 G$ ~$ X: s
通过调试工具可控制程序的运行,停止,复位。也能够进行单步运行(执行到下一条可执行语句,遇到函数调用会进入),运行到下一个函数(函数调用不进入),运行到跳出当前函数,运行到光标行。
, c  g4 E$ Q/ A$ \
微信图片_20241122120610.png 5 V! t5 a2 m3 l- C5 E+ R" D7 g/ g
: L, `& R" q) s1 ]' _* O9 |
▲ 图 2.5.6 调试模式基本操作
9 j9 U- p$ f2 X/ n2 e2 _在代码行号前的灰色区域单击可在此处打断点,程序运行到断点位置处会自动停止。
3 M- S. F, P5 R) E
微信图片_20241122120607.png
4 l8 k5 u5 y$ g  y! R

3 g3 [! T8 F1 U, e+ u
▲ 图 2.5.7 断点调试; y! J" G, c+ I) M  X( @1 z
在观察窗口可观测指定的全局变量当前值。通过观察窗输入可添加变量,或者在代码中右键变量会出现将变量添加到观测框的选项卡。

2 u% [2 T$ t0 O+ A6 Z
微信图片_20241122120603.png
. o( y! q6 v3 p, J/ M; s

6 n8 ?9 n! Z4 `! W3 A) S! Q4 B9 [
▲ 图 2.5.8 变量观察窗3 v: c# e7 W4 f/ J9 C
通过右键加入:

6 H$ m" E! F/ T1 q! k
微信图片_20241122120554.png ' [4 z4 u5 R2 `# P" ~; E

  j" g/ F+ X6 B! c8 Y; t3 r
▲ 图 2.5.9 添加观察变量
4 W7 [' ^) v, \* Q0 ]5 ^' D: x
如有侵权请联系删除
* O1 |, D; e5 G. h" b6 K
' m/ ?' ~: X) d6 R9 m+ h
转载自:AI电堂

6 E# _8 a) v% l; `% c9 \# |- G2 ]% b$ d

. l8 y% x4 w$ Q2 a2 ]) d
+ A! D) E% k- g* c

  {+ R1 |: G7 N: q6 O, T% i7 A
收藏 评论0 发布时间:2024-11-22 12:07

举报

0个回答

所属标签

相似分享

官网相关资源

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