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

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

[复制链接]
攻城狮Melo 发布时间:2024-11-22 12:07
软件平台安装与使用
+ A4 ~2 i. W' E+ b5 D( e  J5 G. l下面介绍如何使用STM32CubeMX配合keil来编写STM32G474VET6的程序。STM32G4系列其他型号配置过程基本类似。( i" `( s0 S. A
首先下载安装 ST 官网 STM32CubeMX 工具。建议下载都为最新版本。安装过程默认即可,但需要记住安装路径。本教程 keil 使用 V5.38 版本 ARM 5 编译器。
' [5 ~# p$ }; H5 I8 `

( [" b" u* i" a4 U, I$ f一、STM32CubeMX 的安装
- ?- H  T4 O! x从官网下载最新版本的 STM32CubeMX 安装包,根据系统选择。9 `+ N' B7 I# i' C/ B

0 z* P6 X: C8 U  B' b
  Z% B9 ~1 l& y- R) k' D
微信图片_20241122120721.png

$ P8 E/ M3 U3 j6 X6 A- j
▲ 图 2.1.1 官网下载安装包
" a  _* O  |- G4 w' v) \. C7 J) U+ |

  G) z* ^- L8 T9 @1 X  T1 |3 w6 \7 x1. 软件下载后为 zip 压缩包,解压后得到安装文件;
8 t# t  E+ P- t/ N# ?2. 点击 Next;
$ _, H  u7 V6 h- W
微信图片_20241122120719.png # r) I  R# {# f, L; j' k

1 I! C$ u+ y$ m) b
▲ 图 2.1.2 Cubemx 安装步骤 1
5 L) J) Y* e; N% K6 J6 m3. 勾选,然后 Next;
/ X& s; o/ n* S
微信图片_20241122120716.png
# O8 x$ v) U- x1 i  P: H

& P; e& h) t3 V( c
▲ 图 2.1.3 Cubemx 安装步骤 2
" ~$ e! v) r8 M/ D4. 勾选,而后点击 Next;

% b9 ^- Q3 J) {+ C' D- [: V5 f$ h
微信图片_20241122120714.png 5 g7 t% W- ^) j" H' i7 A
  i- t4 s9 K. A- A
▲ 图 2.1.4 Cubemx 安装步骤 3
  N0 u) F3 z4 A3 d5 Y+ N5. 选择合适的安装路径,点击 Next;(若路径未创建,会提示路径将被创建)
& v6 S1 H& V5 }+ f
微信图片_20241122120712.png
8 y( M' r- w+ `3 |0 E

& B! Z0 p% v0 M: ?
▲ 图 2.1.5 Cubemx 安装步骤 4
! {: f- Z# a6 {2 \) [" |7 s6. 根据需求勾选,点击 Next;

' S. k6 a) [* u
微信图片_20241122120709.png
3 g" O, `2 H1 [
! d$ D0 D* `* U6 ]5 ^. L9 r& s) k
▲ 图 2.1.6 Cubemx 安装步骤 56 {( }; w% Y4 u9 G! B& K  w
7. 程序自动安装,安装完成后,点击 Next;

' w. M# m6 r* P" ]
微信图片_20241122120707.png 5 |3 @+ A/ P, O/ B0 e5 o

7 s/ ^) q+ |' ~# z
▲ 2.1.7 Cubemx 安装步骤 62 U9 y; T" Q) s! L
8. 提示安装成功和一个卸载程序被创建在安装目录的 Uninstaller 文件夹中,点击Done;
9 h$ X: Q9 G; y7 p0 ]
微信图片_20241122120705.png
1 e2 I4 M8 A# X! u$ r
2 Z8 Q( ?9 Q! P1 z4 l& [9 D
▲ 图 2.1.8 Cubemx 安装步骤 7
) c, @0 n% B9 R  N" d( d" B
6 J, `; G0 d# @+ n! K

: t: n: f8 _4 k* {0 [
3 e) r' N" L; O: @
二、Keil MDKV5.38 的安装6 n, N/ q/ u5 q. q" T
1. 从 keil 官网下载 V5.38 版本的 MDK 安装包。

- i/ [, @5 U" H/ z1 s$ e
微信图片_20241122120703.png ! Y6 ?1 b, c! [4 u/ h+ Y/ i+ a& V
' o2 J/ [6 P8 x( M7 n" T! C
▲ 图 2.2.1 Keil 安装步骤 1
' K' N1 B: _$ _
微信图片_20241122120700.png
  G, m( B. t0 K$ ^

7 k' Y; \9 X. S$ w) t
▲ 图 2.2.2 Keil 安装步骤 2
' G+ S" `5 ~; c# ]7 e2. 选择安装路径

; ~, e+ P% \( X* C& _" n( F# l
微信图片_20241122120658.png
$ H1 E! c3 I. w: i$ q  J

% }; }# H" Z* L) d$ u3 v( k' P* W
▲ 图 2.2.3 Keil 安装步骤 3
$ J. t/ c+ L& x  m$ k3. 填写用户信息
+ @+ R5 r- a: i
微信图片_20241122120656.png * e3 P, \6 a. e) z

! d* Y/ V' R7 @, `4 ~9 e
▲ 图 2.2.4 Keil 安装步骤 4
: K# W/ ]( m' X8 \# L8 v4. 等待安装完成

7 `7 U  F5 d2 Y# d8 T4 Q1 s
微信图片_20241122120651.png * B' L: i  [4 Q3 w' H5 i7 ^0 _% V

9 b4 d3 ~  S& i, X
▲ 图 2.2.5 Keil 安装步骤 5
" N) `% @1 P5 i6 }5. 安装结束
0 q" o/ s* s$ S7 P2 N2 P. f
微信图片_20241122120648.png
- y. y. U  `/ w
* T. {7 b, n5 e3 I7 G; l/ D
▲ 图 2.2.6 Keil 安装步骤 6

& b6 n" {2 R: U' d6 E( I. E* r7 ?三、安装 G4 的支持包
; t  v2 w3 i6 h% `% I1. 打开支持包管理器。5 K8 z& n) B5 ]) d. \
12.png - `. v: U5 i" m) s3 C0 |

9 L. q3 J7 s' o/ A- w* A5 [. R
▲ 图 2.3.1 Keil 支持包安装步骤 1
: |; [& M: m. A7 y2 b9 N6 u
2. 找到 STM32 系列单片机,找到 STM32G4 系列,找到使用的单片机型号,下载安装支持包。
0 W. _: |- b: t% [# v2 W
微信图片_20241122120644.png 6 ^2 W0 X" N% R6 U
6 V' I* W: ^: P$ Q7 v
# B% j3 q7 Z5 ?/ O! h/ s
▲图 2.3.2 Keil 支持包安装步骤 2
3 v7 P$ G! `9 G" |& e+ ]2 k1 o# D
. q/ O6 N) ~; f6 V: \4 v
四、使用 STM32CubeMX 创建 MDK 工程
  y; G  p! S9 E- Z* Y/ z, W- z- I以建立一个简单的 LED 闪烁工程为例,介绍如何通过 CubeMx 创建一个 Keil 工程。
' D/ S/ p+ p& y8 }1. 打开 CubeMx,点击 File,选择 New project。

: D0 Y! \( X  {% {3 F& @
微信图片_20241122120641.png 2 l& j9 Q% S6 \1 o
+ F3 Y5 ^! Y* D2 R1 u
▲ 图 2.4.1 Cubemx 新建工程
& H4 a- T# K: @* j/ o2. 通过填写型号寻找单片机,选中具体型号封装双击建立新工程。

% H# H- j) _2 b+ H
微信图片_20241122120639.png
; R1 E  O2 J+ S; x. e8 b
% A$ Y3 c, D) h: M: P5 A
▲ 图 2.4.2 选择芯片3 j- ~2 M0 M# _# Y; U' y* I
3. 配置调试方式,此处选择使用 SWD 调试方式。

  L% O$ O% `2 p! s4 j0 p
微信图片_20241122120636.png
0 a2 E' h! ]2 N4 r  O- m7 P
9 N) ^* n- ]: x! _3 M( C+ A# C
▲ 图 2.4.3 配置调试方式( P* j1 U5 [* l, V# L) E- t6 U
4. 配置外部时钟源。此处使用外部高速时钟,使用无源晶振。

6 Q4 P& ^8 _4 Q
微信图片_20241122120633.png
$ e4 A9 s& R: B' H% Z- d* x7 z8 U: L  R

/ A6 s2 S& v% K, |6 f/ b8 R* w" C
▲ 图 2.4.4 配置时钟源0 C! f/ U7 _6 o
5. 点击芯片引脚将所需引脚配置为输出模式。
8 i' _" l3 n! g9 U& ^6 z
微信图片_20241122120631.png - G. M- |( E0 D6 }' \9 S

4 O7 S4 \  v$ M9 c5 ]
▲ 图 2.4.5 配置 IO1 `0 G7 S7 u# }
6. 配置时钟树。将外部时钟输入作为锁相环输入,配置锁相环参数,将锁相环输出作为系统时钟。

9 O) @: [; R0 W+ J: y9 p1 i' a
微信图片_20241122120629.png
% X$ h) ^5 g5 @$ U( Q: m5 p) E
; ^- i. J6 z( Y2 m
▲ 图 2.4.6 配置时钟树
; a' I6 R- Q: a5 D2 z7. 设置工程名称,路径,使用的 IDE 以及 IDE 版本。

: B: n' G. |. U+ R) e$ ^0 y
微信图片_20241122120627.png 9 D3 W3 k, [* D8 G! L" w. ^4 i$ o- `

: Z: G0 O5 \) h1 f
▲ 图 2.4.7 配置工程设置' u1 e) A8 x9 ?6 {
8. 设置生成代码库。选择 Copy only the necessary library files。该选项为添加用到的库文件。默认选项会在工程里生成所有的库文件。勾选 Generate periphera initialization as a pair of ‘.c/.h’ files per peripheral。勾选该选项会将每个外设的初始化代码分文件生成,如不勾选会都生成在 main.c 文件中。
( G2 v1 ], r' y& \
微信图片_20241122120625.png 4 D% N- _, Q/ b- K% K
; |7 e) Y. F& Q
▲ 图 2.4.8 配置生成设置
, s3 i/ F- z0 {6 y
9. 点击 Generate Code 生成工程代码。
; y* G1 }  q8 {. D
微信图片_20241122120622.png
3 N4 k* p* s' p$ m
4 H. l0 E( M$ a9 t' S" S# Y
▲ 图 2.4.9 生成代码

0 G& \# O  V7 N五、使用 Keil 进行程序下载与调试9 t8 h  a" z# {
编写完成的程序要下载到单片机中运行。ARM 的调试运行需要仿真器,以使用板载的DAP 仿真器为例进行该程序的仿真运行。
( {5 H1 o# r( g0 }$ D% Q2 F首先需要进行仿真设置。点击 Options of Target,调出设置窗口。在 Debug 选项卡下选择使用仿真器,以及所用的仿真器。CubeMx生成的工程默认选择使用仿真器,使用ST-Link,需修改。

& Q% ~0 T9 }5 C3 S) I
13.png
8 @/ u2 U6 {+ ]/ k; B  K) r
# ^8 Z4 h4 Y# ?. |* S, q- ?/ z6 [' r0 Q
▲ 图 2.5.1 设置仿真器
- {! p; e: a' b* ^* r5 @* S
% c1 a. ?" k+ P
$ u% V1 X7 g. f! U: g% r4 u
选择仿真器后点击 Setting,对仿真器进行具体设置。选择 SW 调试方式。

' Z  k9 o% Y; I3 _+ b# f
微信图片_20241122120618.png 0 U0 ]+ t0 o; P$ W% i

2 o& y) x; ^% s+ P" K1 m
▲ 图 2.5.2 调整 DAP 调试方式7 |: a) c$ E( \3 q2 K
选择 Flash Download 选项卡,勾选 Reset and Run,下载完成后自动复位运行。检查 Flash大小是否正确,如不正确或者未选择 Flash 需手动添加。

1 s, N0 m# k5 k( r# R
微信图片_20241122120616.png * z" V, D9 W1 C1 r4 x! I  Q

, G+ u; W, E' y# g; y, V, X  D' D9 M
▲ 图 2.5.3 确认 DAP 的 FALSH . G" j# ]( N! I% b
选择设置完成且连线正确后点击 Download(F8)下载程序,下载成功后应能成功观测到对应 LED 闪烁。
) ^- u, d" A0 j8 f2 j. c6 ~
微信图片_20241122120614.png
5 ?9 Y' D+ y: S, p: y% {
- G- h0 q3 h! F9 B! q: w
▲ 图 2.5.4 下载程序$ v; |/ `$ \- E  Y1 l0 N
点击 Start/Stop Debug Session(ctrl+F5)进入调试模式,可对程序进行单步调试,断点调试等操作。在调试模式中再次点击可退出调试模式。
+ z+ I0 G# l2 f4 ~$ {, y
微信图片_20241122120612.png 5 a; }* [) B& X& P
* a3 p! S6 [! V. o4 F
▲ 图 2.5.5 进入调试模式4 ]% m1 c( e8 }0 H. C" z
通过调试工具可控制程序的运行,停止,复位。也能够进行单步运行(执行到下一条可执行语句,遇到函数调用会进入),运行到下一个函数(函数调用不进入),运行到跳出当前函数,运行到光标行。
% h( I% |" l" _$ V
微信图片_20241122120610.png
: x: ]- f( g# |( \# ?7 ^4 H, i
8 P5 \2 E, ^/ S1 j1 Y9 Y5 p5 R
▲ 图 2.5.6 调试模式基本操作) O/ r- ~( Y1 c3 s
在代码行号前的灰色区域单击可在此处打断点,程序运行到断点位置处会自动停止。
8 x/ H$ R" k7 a: f1 l# X: ]8 _; ~6 t
微信图片_20241122120607.png
' ]6 a+ k$ j: d3 ~  z

9 W+ D9 {8 ~* K8 u( x! a! r
▲ 图 2.5.7 断点调试
& _( @9 U  e8 I; L3 V5 s7 ?在观察窗口可观测指定的全局变量当前值。通过观察窗输入可添加变量,或者在代码中右键变量会出现将变量添加到观测框的选项卡。

1 `& Q4 V! s3 o& }  h4 Z4 D
微信图片_20241122120603.png   a9 c# A! b3 Z9 x' i; J& i
: ?% {2 k  @6 \& m$ `
▲ 图 2.5.8 变量观察窗9 J+ X, v' q9 \8 k
通过右键加入:
7 Q' X  b. b' \- @+ ~2 p. Z  z7 H
微信图片_20241122120554.png
# ^( ]+ Z  x3 X6 q2 I% K
& N' e1 H& }6 p1 M
▲ 图 2.5.9 添加观察变量
3 k* c+ Y* d6 l3 p
如有侵权请联系删除
9 H$ y0 O. w/ U+ ?
" {3 g& ?: y. B1 b0 P! a
转载自:AI电堂
1 M$ q( F+ x. Q# ?! z( J

. v# l# a+ |* n- w6 Y! N

3 {# y% o6 K- J4 {/ _2 m$ L3 O) a
( V1 k  {% l0 R1 ~+ W# x3 k
收藏 评论0 发布时间:2024-11-22 12:07

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版