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

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

[复制链接]
攻城狮Melo 发布时间:2024-11-22 12:07
软件平台安装与使用
& A% Y. ?5 g" Z8 Q) A* b" G' V下面介绍如何使用STM32CubeMX配合keil来编写STM32G474VET6的程序。STM32G4系列其他型号配置过程基本类似。& K1 p" U" F2 V/ O
首先下载安装 ST 官网 STM32CubeMX 工具。建议下载都为最新版本。安装过程默认即可,但需要记住安装路径。本教程 keil 使用 V5.38 版本 ARM 5 编译器。; }: y& H4 z9 k7 C( \& {4 D
/ X# F4 k) H4 d/ g4 }: S
一、STM32CubeMX 的安装- H3 _) I% d+ E6 X) y) q# y' m+ r' M
从官网下载最新版本的 STM32CubeMX 安装包,根据系统选择。
% M5 R6 c: s" T  p, H: r  U+ r6 G
& r  W/ Z4 J$ j8 z
微信图片_20241122120721.png

/ ~0 g: w; y! ~
▲ 图 2.1.1 官网下载安装包
. ^, o1 g: }4 i! n* F0 W) P# ^( l/ j+ I5 B

2 s/ ~' ^: u( a2 O; Y, s1. 软件下载后为 zip 压缩包,解压后得到安装文件;! F$ i; \* r" A9 w
2. 点击 Next;

* o' a: O* H: A
微信图片_20241122120719.png ( p4 Y: M" Z+ ^( Y+ t2 j

& \8 C& L( p- I
▲ 图 2.1.2 Cubemx 安装步骤 1
6 U* h0 _( i$ Z4 g* f$ I3. 勾选,然后 Next;

) u6 p! N! W$ M0 Y
微信图片_20241122120716.png ) n4 l! n( X+ n
9 D7 ^/ ]4 V$ R0 S0 K1 f/ M# s) U
▲ 图 2.1.3 Cubemx 安装步骤 2
3 b. _& H# A" @6 t# Z4. 勾选,而后点击 Next;
' d  \  I, [0 b* z
微信图片_20241122120714.png 7 g  z* m# K7 m+ W: O
: g3 b9 _" R& n. L* P) k8 _
▲ 图 2.1.4 Cubemx 安装步骤 35 J6 ]8 l8 G" R9 O1 F
5. 选择合适的安装路径,点击 Next;(若路径未创建,会提示路径将被创建)
- |$ A* u! _! ~8 w5 U: |& J8 G
微信图片_20241122120712.png
+ N2 m# D' p7 U5 v6 K

3 r) U& e( E/ g7 ]
▲ 图 2.1.5 Cubemx 安装步骤 4
0 I& J; u, }) l% h8 f8 V  g6. 根据需求勾选,点击 Next;

7 s; }" Q- M0 \: f2 Z
微信图片_20241122120709.png
! B( t1 B: S* w: q/ H; [) ?

# H0 _7 H* k; B( h4 ]0 F3 u
▲ 图 2.1.6 Cubemx 安装步骤 58 G, j2 k# ~2 r: }
7. 程序自动安装,安装完成后,点击 Next;

& I; Z6 U3 X- @, ?' T# N
微信图片_20241122120707.png ( r) B7 a0 G8 I8 }- T# t4 s! {
; ~; c+ j) c6 t/ L& q$ ?
▲ 2.1.7 Cubemx 安装步骤 6
9 q% g7 f- ]5 a5 M/ g- h8. 提示安装成功和一个卸载程序被创建在安装目录的 Uninstaller 文件夹中,点击Done;
) [7 C; K8 Q9 b' T
微信图片_20241122120705.png
8 H& P% b# M- G8 Z

$ T* R! \6 K( J! K2 W( k: ~. C& c5 b9 Z
▲ 图 2.1.8 Cubemx 安装步骤 79 l; v4 ], v5 N/ T

. y9 n$ k" w& w1 h- K
1 Q1 z) x% B$ M9 T7 h0 Z1 r& m
7 i3 l: |, m5 |( ?6 N
二、Keil MDKV5.38 的安装+ R6 F' K7 V! W+ v) F% R. i' j
1. 从 keil 官网下载 V5.38 版本的 MDK 安装包。

, a: K) X; S$ j( z0 i' a
微信图片_20241122120703.png
7 E/ K! d+ s# U  c: N/ A
/ ?2 a; N  a3 O8 _) A5 C
▲ 图 2.2.1 Keil 安装步骤 1

+ E" X, X& i6 D) @# m7 n: v! X
微信图片_20241122120700.png 4 G3 Z9 `% Q2 a6 \5 _

" e1 b  [7 n( q4 l6 s' H
▲ 图 2.2.2 Keil 安装步骤 25 ]0 ~: t7 g3 P3 I
2. 选择安装路径
+ s3 Q: Z$ H2 ?: q( K/ l4 k% [
微信图片_20241122120658.png 4 S$ E) `2 A1 ]8 a

1 x1 W5 v; W9 B. |1 `
▲ 图 2.2.3 Keil 安装步骤 3
7 j! O  _, x' g7 {; {$ w: M$ |2 h3. 填写用户信息

4 N! x0 V) m; R6 a" ]
微信图片_20241122120656.png
3 N( z7 n; f/ `& T9 o( j
' J) w  x/ f: L( [* D9 ?7 V% S, |
▲ 图 2.2.4 Keil 安装步骤 4+ ~* G5 J+ q( p( x$ [5 Y) @" Q1 m1 R' `$ l
4. 等待安装完成
) y- u9 J8 B; F4 J9 q) E$ p% D3 z+ k
微信图片_20241122120651.png ; E( H$ u+ Z0 v0 @% h5 b; Q
! l) t2 `! t) \  ?- x$ A
▲ 图 2.2.5 Keil 安装步骤 5. a7 M% Y' M6 C+ J
5. 安装结束
$ B0 S: ]0 }$ @0 y" ?7 |
微信图片_20241122120648.png
& J6 T' J( u' f/ {) W: v

4 D% ^& v6 Y  g+ D$ r- j
▲ 图 2.2.6 Keil 安装步骤 6

& t( i4 H# ^. Q+ O  X/ Q$ V) R三、安装 G4 的支持包% C! f& J* Q  `& v! r  O; g! Z' Y
1. 打开支持包管理器。
$ w+ N6 s- P. y! o% H4 O) i" k
12.png 6 R; _6 t3 Z" g5 R5 t: t3 K2 V! X
7 N7 |) p% q- }3 ?! h2 ^8 w" [  I
▲ 图 2.3.1 Keil 支持包安装步骤 1
, q$ a- I1 L7 n! [0 g' u
2. 找到 STM32 系列单片机,找到 STM32G4 系列,找到使用的单片机型号,下载安装支持包。- q0 a/ o! I( b
微信图片_20241122120644.png % u$ e) c% ~8 K/ W3 \

; G9 e8 f8 O% \+ C0 M; m: B7 I) w, b6 }. n9 K4 [! E
▲图 2.3.2 Keil 支持包安装步骤 2

% o3 t2 _; u4 g4 H9 s& O: N
7 S, n, o- Z$ c9 V; P+ r四、使用 STM32CubeMX 创建 MDK 工程7 `- a+ c) c3 ]( Z: @; c
以建立一个简单的 LED 闪烁工程为例,介绍如何通过 CubeMx 创建一个 Keil 工程。0 n: i- H- z5 m. K) b+ D* a& C
1. 打开 CubeMx,点击 File,选择 New project。

% V, _: {" ]: Q0 K" ^* _
微信图片_20241122120641.png 2 }& k4 V6 ^% w- F. A8 Y

% _. X! C1 @8 k
▲ 图 2.4.1 Cubemx 新建工程
/ q5 c" ?  `, B% H9 C& S2 V2. 通过填写型号寻找单片机,选中具体型号封装双击建立新工程。

" p; y& {8 G" `8 n+ \! \' r+ e
微信图片_20241122120639.png
) E3 U: m- x7 f! y/ M" H1 n8 a

  Z0 k& x( B% {  p6 k+ e- n# k
▲ 图 2.4.2 选择芯片
# z  v1 `; v1 a3. 配置调试方式,此处选择使用 SWD 调试方式。
2 R( z% f: E* M, }+ S: g
微信图片_20241122120636.png / w- K7 \' s3 E1 |5 _1 r
. L% x7 O+ A0 N& |+ Z) [' z
▲ 图 2.4.3 配置调试方式6 u" Q' }. l; e9 w$ B
4. 配置外部时钟源。此处使用外部高速时钟,使用无源晶振。
( I; b; o$ m4 B# s
微信图片_20241122120633.png , A/ Z) N6 r9 M) H: \, [
9 ]4 i9 X6 E* o# x( U9 p
▲ 图 2.4.4 配置时钟源
# _; m/ [8 B5 @+ G5. 点击芯片引脚将所需引脚配置为输出模式。
, N4 Z% h* [0 R  W5 {( i
微信图片_20241122120631.png
$ n' [! p6 `, e* B

" Q7 C3 @" w: [5 [+ R6 q
▲ 图 2.4.5 配置 IO
# G# z- j# Y1 G2 Q8 O6. 配置时钟树。将外部时钟输入作为锁相环输入,配置锁相环参数,将锁相环输出作为系统时钟。
0 S7 w8 o, N/ G
微信图片_20241122120629.png " R/ u3 i1 B4 f& ?% n+ _
; ^+ z! |9 I% W0 ?. F4 p1 o: a- i
▲ 图 2.4.6 配置时钟树8 U, n2 W, T9 _* U( y& d/ E# L
7. 设置工程名称,路径,使用的 IDE 以及 IDE 版本。
' C& O1 r- |8 ^: O2 A% E6 P/ W
微信图片_20241122120627.png
6 m8 ]# `1 `$ i# a
/ r  ^6 i7 i9 W! c! M" M0 j$ B
▲ 图 2.4.7 配置工程设置6 U: n4 L0 q3 }3 Z9 `
8. 设置生成代码库。选择 Copy only the necessary library files。该选项为添加用到的库文件。默认选项会在工程里生成所有的库文件。勾选 Generate periphera initialization as a pair of ‘.c/.h’ files per peripheral。勾选该选项会将每个外设的初始化代码分文件生成,如不勾选会都生成在 main.c 文件中。
0 T6 c/ C* y1 Z4 e2 @
微信图片_20241122120625.png ( j$ O$ H2 x* h/ }1 _: ^3 C) w. E
' V9 V; A) Q& w7 R, k9 E/ U; t
▲ 图 2.4.8 配置生成设置

& p+ n5 w% C) ~5 C- \
9. 点击 Generate Code 生成工程代码。
' l" {* k" f; P  [# G3 y! ?0 L
微信图片_20241122120622.png
6 o4 a5 c3 W$ R7 N$ f

/ M, h& a  E6 x
▲ 图 2.4.9 生成代码
5 J2 x* |0 j9 }! [  j6 d
五、使用 Keil 进行程序下载与调试
0 k; o$ W  L( h7 c( H编写完成的程序要下载到单片机中运行。ARM 的调试运行需要仿真器,以使用板载的DAP 仿真器为例进行该程序的仿真运行。
/ ]8 g" ], b' b. K* e首先需要进行仿真设置。点击 Options of Target,调出设置窗口。在 Debug 选项卡下选择使用仿真器,以及所用的仿真器。CubeMx生成的工程默认选择使用仿真器,使用ST-Link,需修改。
' w5 J! B/ V1 _4 l  V1 j6 j4 z2 c, V
13.png
2 y% ~7 H" e- @6 Q" c
! K1 T' R2 }1 F6 S! {* I: R
▲ 图 2.5.1 设置仿真器
  x9 s' c# J: Y/ Q) I" w1 O5 m! F1 k5 l# R' ~! I' @

8 g" e4 F" z4 z7 R选择仿真器后点击 Setting,对仿真器进行具体设置。选择 SW 调试方式。

6 z4 q4 I# h/ Z' k
微信图片_20241122120618.png 1 `# g* @5 ]0 P( S3 G/ Q1 ^- v
. X3 b; }, y! b! u- d* {* a
▲ 图 2.5.2 调整 DAP 调试方式; J! I2 \3 @+ ?2 U3 I* g
选择 Flash Download 选项卡,勾选 Reset and Run,下载完成后自动复位运行。检查 Flash大小是否正确,如不正确或者未选择 Flash 需手动添加。

" m' d3 N: H' F* e# @0 G  E" b, t/ G
微信图片_20241122120616.png 7 ^* T/ o# m9 P. n
7 N' Z6 P9 B+ J1 b  S% _- f
▲ 图 2.5.3 确认 DAP 的 FALSH 4 D: C0 a7 g* m( t
选择设置完成且连线正确后点击 Download(F8)下载程序,下载成功后应能成功观测到对应 LED 闪烁。
1 C6 g" j' r2 K& P4 `. I7 D% p
微信图片_20241122120614.png ( ?9 V+ R6 u4 O9 j. O9 \% V/ c) F0 o
; R5 T+ {6 w& }
▲ 图 2.5.4 下载程序# L7 g' o% ^, |$ g
点击 Start/Stop Debug Session(ctrl+F5)进入调试模式,可对程序进行单步调试,断点调试等操作。在调试模式中再次点击可退出调试模式。
/ m8 \2 x- m/ v) J8 J& j
微信图片_20241122120612.png ( _  H3 h1 K& w

4 F' i1 m% u3 v* D
▲ 图 2.5.5 进入调试模式5 z6 Y5 ]/ B% f2 \, K2 |
通过调试工具可控制程序的运行,停止,复位。也能够进行单步运行(执行到下一条可执行语句,遇到函数调用会进入),运行到下一个函数(函数调用不进入),运行到跳出当前函数,运行到光标行。
2 u5 m- _& H3 A9 A0 _1 o6 Z
微信图片_20241122120610.png & J2 J+ {2 v# `( k. X
# [( s% m8 g3 k( M; r* P
▲ 图 2.5.6 调试模式基本操作1 c4 h6 W5 T/ @% w. T* W  w
在代码行号前的灰色区域单击可在此处打断点,程序运行到断点位置处会自动停止。
6 m* a8 [+ P4 G
微信图片_20241122120607.png
7 {: E& Q  @! x4 p- n

, y7 K, U: `1 M- y: K5 ^
▲ 图 2.5.7 断点调试
5 \2 l4 M# b- b% n4 I8 ]7 E在观察窗口可观测指定的全局变量当前值。通过观察窗输入可添加变量,或者在代码中右键变量会出现将变量添加到观测框的选项卡。

" c7 q9 w9 U. k' p- `
微信图片_20241122120603.png % I+ R/ J* R  q( v( `
  E# n# Y& @$ ?8 A
▲ 图 2.5.8 变量观察窗1 N( D6 T$ d9 I/ S9 T. {8 y/ @( @4 Q
通过右键加入:
6 D: v! \" p- s" l* \! x- _
微信图片_20241122120554.png
6 }0 b# T  v, h+ L
3 t, v  S, ]& n3 M) W
▲ 图 2.5.9 添加观察变量
, T; s6 x/ I1 l  z$ d3 j
如有侵权请联系删除
$ o1 v" n% r4 J# I' {' m8 W

5 L/ z( k# I. \5 T; L+ ^
转载自:AI电堂

5 o) b, w  k+ _: a$ k& _9 `

- X( f6 ]# J2 P( k+ H* h% ]7 T/ X

. r& O' c% A5 b
0 J0 E/ _+ ~6 q0 \, q$ l
收藏 评论0 发布时间:2024-11-22 12:07

举报

0个回答

所属标签

相似分享

官网相关资源

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