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

【实测教程】STM32CubeMX-STM32L4之(GPIO输出)点亮LED灯

[复制链接]
STMCU小助手 发布时间:2023-1-15 00:06
一、开发板平台简介:
1 H- l; Q" [' C( l1 L* x. Y(1)开发板主芯片型号:STM32L431RCT6# e9 U: f! S" H
(2)开发板主芯片封装:LQFP-64_10x10x05P
1 L( e. W1 Z; Z. V(3)开发板主芯片内核:ARM® Cortex®-M4
3 M# f2 k1 |  s0 G! F3 `0 p) R# G(4)开发板主芯片主频:80MHz8 b$ [  ?. B4 j, W6 [0 [9 _) a
(5)开发板主芯片Flash大小:256KB0 I4 @# [, z* }0 Y
(6)开发板主芯片RAM大小:64KB
2 p3 @( A1 `: V(7)其他外设:请参考芯片手册
- y4 W# G7 A+ O! \3 v  r# `; M: `9 U# g, e3 l+ k
bb91345227434ee7a43a34bf3fe366e6.png ) S0 h4 V8 @3 K9 E, r

) E5 h; f/ u1 T7 ^/ ?- d; I& r 929c0cce04aa4115a8623703982bf3e1.png 2 T0 z* s* o$ v& l9 C4 _- ~9 D
4 W" }; t4 ~/ B- n& K2 B: ]1 }$ c
二、新建工程
7 p$ O) P- r" I1、打开STM32CubeMX,点击“File”-->"New Project"
3 \& j4 K+ W7 ^9 z. V
6 `% x+ ]4 t3 y/ d
2399170347904e959c855fefd5877f84.png
  |$ n1 x$ h  D2 V6 w
- k5 A$ D6 c8 G7 ?
2、等待打开主芯片选项界面(大约1分钟时间)。) j. N8 G) p+ y3 R

( k; W+ D+ [6 w
d74d2fdc60c9440483e2b7cf8d928e7f.png
: Y/ t: f5 r( k+ n$ t
6 E+ h  S8 G7 w; `- a1 C" }3、昨天搜索框中输入(或选择)所需的主芯片型号(因为我们用的是STM32L431RCT6开发板,所以此处现在STM32L431RC),然后在右下角选择STM32L431RCTx(因为开发板主芯片是STM32L431RCT6),左键双击即可打开新建的项目。
9 }( L- Z6 q! v4 Q9 w
0 a0 p& a6 p1 N6 \' ]
7b80345238d74bea82ce70e1a348f7b4.png & C" W( @$ d) I8 z& P) i* f
( R- o- X. Y2 U! W3 A# y1 F
4、选择时钟源。/ ~, i# V! z- P8 v3 P9 W
(1)因为开发板上有8M外部时钟,此处选择外部高速时钟(HSE)。3 z8 Y! S% h2 X2 _4 N# d% H
(2)因为我们没有用到外部低速时钟(LSE),此处不做处理。
- L$ w% ~  G; s. _. A5 u/ T2 u! C; J/ F7 E# D
72119b971f62410fa8344f7f9fb9f389.png ! O& M! N" p% R8 o

8 l0 ~  k9 u5 b- Q. d# w7 Y+ n5、查STM32L431RCT6开发板原理图得LED1控制引脚为PC0,则配置GPIO的引脚PC0。) }+ L& u) k9 I3 G" P3 E# P) B
鼠标左键点击PC0,选择“GPIO_Output”,表示设置该引脚为输出模式。
; z  e  x  G& J8 Z( q6 o( q
8 {0 \5 d6 Z/ d, z+ A4 U& F2 y
492907c1e71149819adbaee4516a2af4.png
4 ~5 T" a5 H) r; w

9 k6 \8 F2 q0 Z  W$ I, A 6、根据自己的需求配置GPIO的参数,如输出方式、输出频率、上拉下拉等。因为GPIO控制LED的要求比较低,此处采用默认参数即可,不用修改。
/ `7 v# v; b- [  G: F4 _: Q- W* I9 d4 M, A& F2 O; }4 P' d
38ff4b80e1c5495ba3076a5158fd91fa.png
- L; S  |1 x# r2 _: z

, M, G/ I( h# Q  J" u2 F 7、配置时钟树,用于系统内部时钟,以及各个外设时钟等。此处选择外部8M晶振作为主时钟频率,内部最大倍频80MHz。0 S. [! t) y2 p/ F+ d$ T
# U% d* H1 \1 ~9 m
2ce1933c10484d819234682f4abc0228.png
/ a' s% |! J+ S, L  c
+ B8 P4 [. B  Q2 D1 ~ 8、完成配置工程。+ y% ~- U" f2 C0 i/ x! F! `  `

/ W4 \5 g) Y7 W
ef6feb3c454441c59bf509c6692e254d.png
1 M$ n/ \9 b& H, Z7 L5 h

6 {, f# F! C0 _5 g0 v& c- P1 l 9、生成代码。
. _) R% H4 ~  _7 I  @" z& M& w* }6 ?% E* O1 v  q4 b
8eaa7d0babea40ee93f158481a6ee471.png ( o0 m' d9 P' [( |
) _' I! g5 x  I; }# J
三、在KEIL 5中编写代码
7 r+ L# E4 U9 Z1 T! f
1、找到刚才新建工程的存储路径,安装项目名称,打开项目工程。
7 l& D% R- k+ W3 r& I
" l$ a/ O, E) t) e
40f3062f207b445d856016425cf3bb76.png . z* R9 F1 `! j' m, o" A6 A  j
3 x# X1 d6 ^- _0 c5 X* Y8 ~
2、添加控制LED1灯闪烁的代码,然后编译,确认编译OK(0 errors、0 warnings)。
- Z0 x7 u3 L' c& t) |" d- C, H2 h# G( h6 B4 _
b737445ba6da410394b5527de2add82d.png
* l; t8 D' X& Q3 Q  U$ K: {8 w4 _- e5 i0 p* \% S+ k
3、选择Options for target ...>>Debug>>J-Link/J-JTRACE Cortex,点击Settings>>选择Port(SW),可以看到搜索成功SW Device,表示芯片可用,可以下载。5 [& O3 f# ?4 X" x8 n

) i4 a, k5 o5 y7 J$ r* @
d444af879a804dc1bc924096aa0ff97c.png
6 N! f; R4 h1 K# ~& ~: k
% m5 i1 l# N1 j. D9 q- P2 A 4、点击Download(或者快捷键F8),即可下载程序。
& x3 j$ n; z& }% t) |7 Q8 N
9 b+ W9 \9 G/ n# v/ b+ P7 h) M
11dbfb7f041b4c1ba7172a56a3a22fc0.png 1 z- V* z; [, n6 r/ Y/ f6 B
5 [5 C- \  \& v
5、 如果下载程序后,没有看到LED1灯闪烁,可以按下述方式设置一下(Reset and run表示下载后自动复位和重启运行)。或者重新彻底断电再次上电(或按开发板的Reset按键复位MCU即可)。% \0 h5 W+ f# M& p

9 y, G; S) e) n5 D9 V( F& L9 M3 U
7f75477f2ac24930b2e5d00ffe27f00e.png 1 r4 n. @& ~6 R9 q
6 s9 R% C# V! D( u4 ?/ \' k
6、至此,STM32L431RCT6控制LED1灯闪烁即可完成了,Just do it。 & X/ j5 o' h- y3 x$ d2 Q3 B
————————————————
0 W" L8 r7 l' W* Q+ b, V0 c. i版权声明:智能小屋ZYXC" g  d9 n7 V$ J0 M6 d" {: H
1 a$ `! v, i" c- t; c) W$ s5 o
收藏 评论0 发布时间:2023-1-15 00:06

举报

0个回答

所属标签

相似分享

官网相关资源

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