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

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

[复制链接]
攻城狮Melo 发布时间:2024-11-22 12:07
软件平台安装与使用
# U, ^" s9 m- B; @/ w* R下面介绍如何使用STM32CubeMX配合keil来编写STM32G474VET6的程序。STM32G4系列其他型号配置过程基本类似。
+ Q7 V7 Z1 Q, M: t1 x! g首先下载安装 ST 官网 STM32CubeMX 工具。建议下载都为最新版本。安装过程默认即可,但需要记住安装路径。本教程 keil 使用 V5.38 版本 ARM 5 编译器。4 |4 y# h) _: B3 B$ R( P0 l1 h

" ?) _) o, ]( D# |5 [0 w一、STM32CubeMX 的安装0 ]" E8 U& \( `$ z- T) x9 ~' \5 h
从官网下载最新版本的 STM32CubeMX 安装包,根据系统选择。
+ ]; e. T6 ?6 W2 J, f; y" Q+ _
; m7 K! A, r" a9 y' o- T- L. h

7 x) q+ a( Q* y0 W3 t
微信图片_20241122120721.png

' p8 l, f' `3 p& ~( G
▲ 图 2.1.1 官网下载安装包& Z8 |8 j- s& t; l7 g  T3 ]

" v3 i: f& h( I; N' `/ s( X, k% Q

4 a; b& }# k4 x- m& ]% q1. 软件下载后为 zip 压缩包,解压后得到安装文件;
) q1 b  O9 \3 N. F& U2. 点击 Next;
+ I5 ]8 i. l8 t0 @0 [2 H4 ]
微信图片_20241122120719.png & i! w! g3 v. }( u3 d& V3 @

1 F& y. Z. |0 X( P
▲ 图 2.1.2 Cubemx 安装步骤 1
- E# U: d% {# p8 x4 ~. I3. 勾选,然后 Next;
. {, ~: I3 E/ }7 |0 P6 J
微信图片_20241122120716.png 4 ?' }; N$ v& M  u7 L. H2 a

1 s, G+ w  s! e# v0 T% |9 v
▲ 图 2.1.3 Cubemx 安装步骤 2
& m9 z+ B# K5 ]  @4. 勾选,而后点击 Next;
% h, Q2 N  ?& h7 ~- l
微信图片_20241122120714.png
3 }& Q% S( x/ J9 q% r  U+ }4 i. R; k9 y9 L
2 d- f# P" j9 U% w' Z) Z4 d
▲ 图 2.1.4 Cubemx 安装步骤 3
0 V2 N! s7 k6 ]$ @5. 选择合适的安装路径,点击 Next;(若路径未创建,会提示路径将被创建)
3 W( x* B9 f- @$ O6 h. z( t
微信图片_20241122120712.png , U- W2 W+ H- i  R. {+ v  R" [
* H' H9 [3 E+ k9 e2 T
▲ 图 2.1.5 Cubemx 安装步骤 46 K6 t! c7 I. `1 V7 l3 ]
6. 根据需求勾选,点击 Next;
( n' F( ^8 E5 |: o! }: X9 o0 u
微信图片_20241122120709.png
' O: c) U8 W' G" s3 D( H% b" @

; n4 o0 {/ {2 @+ w: E& Y3 D8 Y
▲ 图 2.1.6 Cubemx 安装步骤 5$ `1 ~" h% t" a4 c: Z4 h
7. 程序自动安装,安装完成后,点击 Next;
( s! [. x' W5 f" B* [; y
微信图片_20241122120707.png
- ~; _, M. \3 P8 d4 C

9 B3 h8 l/ {& A' U* a
▲ 2.1.7 Cubemx 安装步骤 6: X. ^, f. }8 w3 b0 `/ ^2 ~4 X+ k' B
8. 提示安装成功和一个卸载程序被创建在安装目录的 Uninstaller 文件夹中,点击Done;

2 X, C, o0 m. s! |0 T
微信图片_20241122120705.png
3 l  K% \$ ~' j- K5 m
3 R3 r9 t* T9 U9 c. h
▲ 图 2.1.8 Cubemx 安装步骤 7) r4 ~; i! n& l6 l% ^$ J5 J
* h2 ?" w$ w, Q# s

2 ~0 L# o! q4 O. t  J

2 ~/ J, R# H8 C* A4 s# M7 G0 r二、Keil MDKV5.38 的安装; t) t7 u" M3 `: P0 Q5 X
1. 从 keil 官网下载 V5.38 版本的 MDK 安装包。
, j1 j8 ~1 X( }2 b1 c
微信图片_20241122120703.png # m$ K4 A3 Z! L5 S- }" f# l

& ]: A9 F  D: K5 o
▲ 图 2.2.1 Keil 安装步骤 1
; ]: \7 _; b  w, j
微信图片_20241122120700.png 4 p+ x! h  q1 P$ [8 O. [+ k. E6 J

: H  K' T( o. f7 X. s" F
▲ 图 2.2.2 Keil 安装步骤 24 X. _; r3 u8 T% E- f
2. 选择安装路径
* S# X% S6 v# M9 z) x
微信图片_20241122120658.png 1 d& E" `# \# G) N( t1 Q; R% }
0 Y- O% G+ F: D' {, o
▲ 图 2.2.3 Keil 安装步骤 3
; H" W0 i& U' n8 Z3 P0 A; w% v! D3. 填写用户信息

6 t, s2 F0 w  _4 F
微信图片_20241122120656.png 2 C1 `# M5 f% O% A

% @# m) e' u9 I: v/ ~
▲ 图 2.2.4 Keil 安装步骤 4  V* [: T; g+ B- Q! m: f
4. 等待安装完成
0 ]8 ]. i( v) q$ h3 G, ~" Q
微信图片_20241122120651.png - j; {, p( O2 h

: V7 j/ q( u. f" a- J
▲ 图 2.2.5 Keil 安装步骤 5
) k0 |/ m1 T$ N+ v5. 安装结束
+ J+ e. B+ Y$ K
微信图片_20241122120648.png
3 F" t, c  L* K  ?  W

2 W3 g! {" ~" |/ N2 |1 @" @9 G: c' M
▲ 图 2.2.6 Keil 安装步骤 6

+ J* ^; c0 }7 Q: ]三、安装 G4 的支持包
& {" ], R& U) l; s* v1. 打开支持包管理器。$ F/ I! v# {7 A* ^6 O+ v
12.png
# N7 s- t( ]4 P& E) h  `9 T
2 |6 ^$ D$ O4 P: d* t5 w2 F) n
▲ 图 2.3.1 Keil 支持包安装步骤 1
7 e: E5 K7 C$ \/ o3 X
2. 找到 STM32 系列单片机,找到 STM32G4 系列,找到使用的单片机型号,下载安装支持包。" @: p* G4 r7 G" E3 d4 }- d" b
微信图片_20241122120644.png
0 |8 l6 ?2 D# _( P

* G4 `% l) ~' f* S. M/ O% S& l8 s) h* K* J1 D, L2 P
▲图 2.3.2 Keil 支持包安装步骤 2
* R2 Z- u3 i1 {9 \

5 m7 F/ {9 |  X: a8 p' q四、使用 STM32CubeMX 创建 MDK 工程
- @; k6 [, E  S/ a: u$ l3 @( U' i以建立一个简单的 LED 闪烁工程为例,介绍如何通过 CubeMx 创建一个 Keil 工程。
$ Q5 S! |* d( K6 o# y1. 打开 CubeMx,点击 File,选择 New project。
' O6 K% @  r% H- N# D$ g
微信图片_20241122120641.png . u7 n" W- S3 s6 q
! |" H- e7 u2 @
▲ 图 2.4.1 Cubemx 新建工程
3 n: s9 C: f- |+ Y, |2. 通过填写型号寻找单片机,选中具体型号封装双击建立新工程。

) {# @0 c  I" K0 V8 a! M
微信图片_20241122120639.png # q+ ~, \# R+ q
  }! ?7 _( r' B
▲ 图 2.4.2 选择芯片
# o1 d# `. X) E9 l3. 配置调试方式,此处选择使用 SWD 调试方式。
( V% l3 d% s9 c
微信图片_20241122120636.png
' j5 \# L' l7 y  r% O; }2 H, m) p! c& [
. k4 n: K, e* {: r1 E' d$ p5 s. ?
▲ 图 2.4.3 配置调试方式
$ v- [" `# _  w( X+ z4 ~) N4. 配置外部时钟源。此处使用外部高速时钟,使用无源晶振。

. x0 Z7 Z4 ]! K# M6 Q/ \
微信图片_20241122120633.png
7 B/ y1 q' t! R* A, G
6 M  z5 j9 m9 \/ Y3 {' q: i5 I
▲ 图 2.4.4 配置时钟源" ~& y' f8 w. Z" _- }* w, ~+ P/ n
5. 点击芯片引脚将所需引脚配置为输出模式。

  w* h$ k3 S) R3 E, |7 s
微信图片_20241122120631.png
  q& S2 ?. M& W( s

3 |1 Q6 Y' }( s/ |1 d6 Y4 D) ~
▲ 图 2.4.5 配置 IO
- H6 d$ o& g2 |7 u, [1 @4 P, b6. 配置时钟树。将外部时钟输入作为锁相环输入,配置锁相环参数,将锁相环输出作为系统时钟。

* ^6 Z3 A6 V. Q3 O4 x: q
微信图片_20241122120629.png
: [5 ~. V4 v- {& G3 ~& L
/ D7 C  ?) e- e) [, O
▲ 图 2.4.6 配置时钟树2 Q$ c$ Z) r6 ]0 {" T& @8 w
7. 设置工程名称,路径,使用的 IDE 以及 IDE 版本。
2 c( k( `& r) F
微信图片_20241122120627.png
4 \: e& ?) o' _- a& L9 E$ N
5 G! p5 ?0 @  S8 V1 U; W
▲ 图 2.4.7 配置工程设置
. ]8 u: o- B, |6 g8. 设置生成代码库。选择 Copy only the necessary library files。该选项为添加用到的库文件。默认选项会在工程里生成所有的库文件。勾选 Generate periphera initialization as a pair of ‘.c/.h’ files per peripheral。勾选该选项会将每个外设的初始化代码分文件生成,如不勾选会都生成在 main.c 文件中。
% q( H( M) h3 `4 @; T. V
微信图片_20241122120625.png
2 I: R- }4 R6 Y  t2 {7 k

! L. O$ M4 V, p4 U
▲ 图 2.4.8 配置生成设置

- \1 {, g' b, G! ]0 @9 P
9. 点击 Generate Code 生成工程代码。
0 s7 X; v" y% i9 _' h4 f  e
微信图片_20241122120622.png # y/ l  `# J3 |' G) p7 u
2 }0 h. e4 H- E* k+ Y
▲ 图 2.4.9 生成代码

  D' v  a4 \$ ^5 ^五、使用 Keil 进行程序下载与调试" e; u' y( U6 ^5 G) I0 l, o
编写完成的程序要下载到单片机中运行。ARM 的调试运行需要仿真器,以使用板载的DAP 仿真器为例进行该程序的仿真运行。  _; X+ `( x1 J) }" g
首先需要进行仿真设置。点击 Options of Target,调出设置窗口。在 Debug 选项卡下选择使用仿真器,以及所用的仿真器。CubeMx生成的工程默认选择使用仿真器,使用ST-Link,需修改。

+ }! ^9 K+ g8 y
13.png ! O' P) c; C$ T. J8 _- G1 F4 M2 h

1 d" y! Z, X7 c8 h' H: o
▲ 图 2.5.1 设置仿真器6 b- p6 t* f& p) Q2 {$ U

' N1 K$ @0 V8 E. \" @0 |" U* c

# b0 F( w! X/ G) w0 v/ K! s6 l6 t' k  S选择仿真器后点击 Setting,对仿真器进行具体设置。选择 SW 调试方式。

& U- A4 U' M$ e" h1 C4 V/ A' \( r
微信图片_20241122120618.png 5 _8 @3 R9 N4 F+ x+ ]: @& b1 ^+ L

# g4 ?) j8 K+ y% R/ [
▲ 图 2.5.2 调整 DAP 调试方式1 R  c5 K; l6 E" x6 I3 Q
选择 Flash Download 选项卡,勾选 Reset and Run,下载完成后自动复位运行。检查 Flash大小是否正确,如不正确或者未选择 Flash 需手动添加。

/ J" l& B! M5 t4 w' b0 `
微信图片_20241122120616.png
- |$ _" ^1 O& r+ d  r5 l2 O6 P
4 @1 o1 k& T: q! j' i/ X
▲ 图 2.5.3 确认 DAP 的 FALSH 4 i; o! x$ d2 U1 v1 i
选择设置完成且连线正确后点击 Download(F8)下载程序,下载成功后应能成功观测到对应 LED 闪烁。

3 ?1 r. T3 Q$ I, u: f( z, A. {
微信图片_20241122120614.png
% j0 P0 K/ M  ~7 x: l

" }8 T* y1 D, z! d8 f- I
▲ 图 2.5.4 下载程序
( M# J$ P0 R" ~/ D+ @! P4 q点击 Start/Stop Debug Session(ctrl+F5)进入调试模式,可对程序进行单步调试,断点调试等操作。在调试模式中再次点击可退出调试模式。
8 B# d5 {9 G. g
微信图片_20241122120612.png
  S( m! Y+ n  F" ^
9 T; W5 q' }5 K2 Y
▲ 图 2.5.5 进入调试模式; T* b2 Y: |" s+ V! z/ e! W3 K* [% |  T
通过调试工具可控制程序的运行,停止,复位。也能够进行单步运行(执行到下一条可执行语句,遇到函数调用会进入),运行到下一个函数(函数调用不进入),运行到跳出当前函数,运行到光标行。

: ^, o: \( K2 U. P6 C- p. R
微信图片_20241122120610.png
& p# _3 Y' T$ d5 G1 ]% ~* C( m: C

; P& R1 D3 V1 Y1 t4 B, H  @
▲ 图 2.5.6 调试模式基本操作) t: z" h/ _' w' C
在代码行号前的灰色区域单击可在此处打断点,程序运行到断点位置处会自动停止。
7 ?* c2 y2 |* Q% @% X
微信图片_20241122120607.png 3 K+ C4 {/ I0 j( p
1 v+ B! c- i8 H
▲ 图 2.5.7 断点调试
4 {5 h' P) s4 q. p/ T; J在观察窗口可观测指定的全局变量当前值。通过观察窗输入可添加变量,或者在代码中右键变量会出现将变量添加到观测框的选项卡。

* j9 ~- @, c5 v( E8 Q+ }& ~
微信图片_20241122120603.png
  i+ ?- x6 J6 d+ _. C* G

8 I% A, U( t; q6 A0 @
▲ 图 2.5.8 变量观察窗
, [2 `3 l' ~/ o' g" h通过右键加入:
: G8 U  a- U  m) H- n+ U: q
微信图片_20241122120554.png ( p: C/ c9 K* d7 g

- J8 ?) u2 }% ~8 @' v9 S
▲ 图 2.5.9 添加观察变量

- q% ~$ [  j% m2 a- ^
如有侵权请联系删除1 ~% q2 I! _) j

9 M8 _* n# A3 G+ |
转载自:AI电堂

* y4 z1 f. \8 A5 T' Y/ l( y% K
( o: T! i( O4 s" s  Q
5 U# ?! w' Z; d4 E+ l# o% _+ \

9 m. b4 X: l( k* t' V0 o
赞 收藏 1 评论0 发布时间:2024-11-22 12:07

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版