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

STM32CubeMX Nucleo F767ZI 教程(2)

[复制链接]
STMCU小助手 发布时间:2022-8-23 16:13
前言
0 G$ @& Q) h2 J6 h学习Nucleo 的主要渠道还是通过官方的手册,以及官方的驱动例程。 官方手册在STM32CubeMX选择对应的板子时,上面有个Docs & Resources 可以看到。2 w! _* q3 U# T! [9 @( ]* ^- y6 S
5 l$ K/ i; b, Q- l/ }! J
20210117111654978.png
( H7 M6 b( d4 j! y9 u* b" F) s0 G0 a& Y) J7 x  `7 y- w9 B
官方的例程在对应的pack中,在Embedded Software Packages Manager 中可以管理对应系列的支持包,比如现在使用的是 STM32Cube MCU Package for STM32F7 Series 1.16.0,下载之后在STM32CubeMX的文档目录下,每台电脑可能都不一样,所以可以通过软件 "Everything"来搜索对应的版本号,直接搜索1.16.0就能搜索到 “stm32cube_fw_f7_v1160.zip” 这个文件,解压后就能看到各个例程了。
, ]! n# e; j/ m6 @/ N% L; @. T4 i; X& p; s) T) I7 c
20210117112216338.png & A" E5 @1 T5 l
4 J9 |  n. e+ X* F( a+ n- C% R
一、原理图  X, |  j+ U8 |* \
要想学习一块开发板,先要对原理图有一定的了解才行,后面才能根据这个硬件进行配置以及编程。原理图可以在官网上进行下载。
3 A' T/ b8 Q% I: r
% o  D1 y0 v, K$ |9 J1.MB1137 顶层文件
& M- ?- }& r( d. ~2 d

: k3 o+ K. n# N3 x* _6 U0 c; a% x- t GU(`BF0X[XA28J7YVD9(H_D.png
- I0 X! J* h$ j' c" K1 i
& V: w& h# }' _这个项目是多个原理图进行设计的,有一个顶层文件,以及多个底层文件,通过顶层文件来管理各个底层文件的连接关系。底层文件的各个功能如下:0 |4 i) w+ T3 S/ T. Q% b! l" X
Connectors.SchDoc5 n( ~% f2 \9 U

- U4 L6 [+ p2 S0 m3 ~) A这个是ST Zio扩展连接器,可以连接ARDUINO®Uno V3,还可以连接ST官方的MEMS(微机电系统)等扩展模块。$ B# h. T: [. l% s/ F0 b- O
: e. {: B' N" l
MCU_144.SchDoc
1 U5 T+ Z" Y( X( D
6 c9 a. \; \( Z( d9 D; m2 Q这个就是144引脚封装的STM32,里面有一些兼容性设计,可以根据不同的配置来焊接不同型号的单片机。
# R* j" M$ `. l: R9 u) W
+ i/ i: l7 q" B4 u  P# K. VUSB.SchDoc, m! K$ F  @/ W  \, Y2 L" Z) e
# g+ ^, O7 q& O, Q, c
这个文件是USB设计相关的原理图6 K7 A. i4 A5 T+ J9 F, P
. b6 W- N7 C- m8 M0 V
ST_LINK_V2-1.SchDoc

7 _' H/ [$ H, n
( c" i7 E- i: I' m- d3 W板载了一颗STM32F103CBT6,烧录的是STLINK的固件,所以可以直接使用USB连接,就能调试Nucleo,除了通过MDK进行烧录程序,升级固件之后,STLINK会在电脑映射出一个硬盘,可以直接将bin文件拖拽进去进行烧录。另外这个STLINK还虚拟了一个串口,与Nucleo的UART3进行连接。
3 S7 P% M  S0 f: w1 Z: s+ O. j9 n1 K& s( Y/ w
Ethernet.SchDoc
; z4 p1 c0 f& u3 u/ g! I
5 l8 Y3 R" S$ k通过RMII连接LAN8742A-CZ-TR,可以使用这个来进行以太网的学习。
9 Z! h; e: M7 Y/ i' k9 ~
2 f/ g$ D: h+ y4 ?9 L顶层文件3 z5 `* h8 h5 \' ?" T1 Q

3 a/ ^5 U& G' e2 T顶层文件除了确定各个底层文件的接线,还设计了一个电源管理模块,可以通过JP3来选择供电来源,默认是通过ST-LINK来控制U4功率开关芯片来间接控制电源,这种方式是通过USB供电的,USB2.0的供电电流是500mA,所以如果是大电流的负载下,应该要切换到VIN来供电,Vin是通过板子上面的排针进行引入的。; G- R3 n1 T, V! o: k$ D

% m. T( |4 U& x. L) A9 n: d3 ~# h2.Connectors.SchDoc

6 A* E0 K  x9 M5 C* ?/ h% f这个文件主要是将STM32的引脚引出,如果需要调试其他模块时,需要使用排针进行连接。具体可参考6.12、6.13、6.14、6.15小节。: g$ V4 t( ^# O: U; u
* _+ X  p5 I$ p6 f4 L2 R+ T; j3 D
(D1F_I~BPG}`~W__BAS4JZN.png 6 j2 r  T/ f" y0 i) \# |* h
: k6 |: H0 ?: N: o6 i' ]+ K- r, X
3.MCU_144.SchDoc# A/ j1 N3 \" ]+ e' t4 H# o

$ P3 k1 M% i# a+ I  m( I# y
)J]`QKANSRN4O@D5FT5ES.png
3 f& M( p  M* g, M7 f
( d' j- t! x, y4.USB.SchDoc
7 N  k9 m6 f7 |3 [) I4 A' t# f; ]1 j8 I: D- w
72Z3TGLNCL@ADR$AAZ$F_FU.png 6 H# q8 e8 b9 t0 ^
# @+ Y2 ?/ b" ~! L
5.ST_LINK_V2-1.SchDoc
0 w% X. ^4 ~1 _/ _7 H  B6 n  D, A
& z& B6 l9 T6 V/ e* }# F
5XBA4]9(14)OOI8VCI0J(%4.png / r6 V$ {  r1 {7 X; y  R
  F" n% Y- _3 e
6.Ethernet.SchDoc
! `: K# J. E; E+ p

8 S0 ?# s, H: Q/ N+ G+ }7 T) j2 Y% b EJC{$(SV9_C5S7IQ16Z`J]I.png
' u# D9 a/ b% I$ v. n6 r
$ L; \: o6 h: }/ t  U7 [( N" D二、用户指南
4 q7 U9 h# M8 n( D
翻译自UM1974.pdf
; w  j& ~& e9 A, F8 r% x+ @$ `8 J& J. o, E3 N
1.介绍
3 I+ A+ W2 |; F基于MB1137参考板的STM32 Nucleo-144板(NUCLEO-F207ZG,NUCLEO-F303ZE,NUCLEO-F412ZG,NUCLEO-F413ZH,NUCLEO-F429ZI,NUCLEO-F439ZI,NUCLEO-F446ZE,NUCLEO-F722ZE,NUCLEO-F722ZE,NUCLEO-F722ZE -F756ZG,NUCLEO-F767ZI和NUCLEO-H743ZI)为用户提供了一种负担得起的灵活方法,可以尝试新概念并使用STM32微控制器构建原型,并从性能,功耗和功能的各种组合中进行选择。 ST Zio连接器扩展了ARDUINO®Uno V3的连接能力,而ST morpho接头连接器则可通过多种专用屏蔽罩轻松扩展Nucleo开放式开发平台的功能。 STM32 Nucleo-144板集成了ST-LINK / V2-1调试器/编程器,因此不需要任何单独的探针。
7 J. }) e0 E2 `7 c8 s' f& V& ?$ `) f2 A' F# s
20210116195030743.png
0 Z7 b9 s3 [$ ?1 Y* R2 D  d6 @3 ^3 O2 x4 p/ D
2.订购信息

  P5 ?0 Z4 P* ^  M% m3 {None
  s8 `% ^( v4 P  X: ~5 h+ [5 T& a( v# P3 n* l; U6 c6 A( J
3.开发环境, v$ n/ ?5 a9 h: S; q, m
3.1 系统要求+ T' ]4 T3 E0 J5 k( F7 _/ T
Windows® OS (7, 8 and 10), Linux® 64-bit, or macOS® (a) (b)
& Z% c3 D7 g. a$ M, r  I& \# x* B( VUSB Type-A to Micro-B cable
  j6 Q1 A9 S. ?$ \. u1 d3.2 开发工具链
4 R% d, r* V' c" L2 {* {1 y, yIAR Systems- IAR Embedded Workbench®©6 K% J8 Z, x' }$ O2 l/ [( l9 W# |
Keil® - MDK-ARM©+ \9 e1 D8 g$ }$ M0 ?1 j) x4 P' H! Y
STMicroelectronics - STM32CubeIDE
* m8 `- \  r" a. Y& AArm® Mbed™ online(d) (see mbed.org)
; _* T2 R* w" l. f4 q) F0 ?' l/ X+ B1 H8 @! X/ }
3.3 演示软件
* F# L0 L7 g4 w. Q! e4 XSTM32Cube MCU软件包中包含的演示软件与板载微控制器相对应,该演示软件已预装在STM32闪存中,可轻松以独立模式演示设备外设。可以从www.st.com下载最新版本的演示源代码和相关文档。
9 y. l. P' o9 _& d# u& C! v' {( R" z7 R3 H
4 约定
/ i- j$ r" p: }- F9 M6 t! \: a( p2 J& o5 q$ I* P3 d+ n7 U6 u
{}05O@L6MCP87S4]U40L{DW.png 7 n6 w+ s6 z0 c& [8 ]1 \
6 G) |8 V4 c- H
9 {3 ~# Q( [! }# d- S5 `
5 快速开始% K/ l: x% z$ u, Y) W( r# ~& m% a
STM32 Nucleo-144开发板是一种低成本,易于使用的开发套件,用于评估和启动采用LQFP144封装的STM32微控制器的开发。
3 ]1 `5 c* ^: T8 T/ E+ ?
; T1 s6 v8 Y+ t2 M0 p% a2 T5.1 入门- k# D" e: a$ B, s( e
请按照以下顺序配置Nucleo-144板并启动演示应用程序(有关组件位置,请参见图4:顶部布局):
2 X) P, V0 e; c9 M3 J* X% o0 ^- ]9 S; d( S( a& t8 U" v
1.检查跳线在板上的位置:1 ?+ U% A5 Z  [' V$ I
选择了JP1 OFF(PWR-EXT)(请参见第6.4.1节:来自STLINK /的电源输入 V2-1 USB连接器,了解更多详细信息)
5 \; v5 n$ n8 ?4 q选择了U5V(电源)上的JP3(有关更多详细信息,请参阅表7:外部电源)
6 j/ `% r" P6 O选择了JP5 ON(IDD)(更多详细信息,请参见第6.7节:JP5(IDD))
! ^' M' f, R1 M. M6 b选中CN4 ON(有关更多详细信息,请参阅表4:跳线的CN4状态). ~; `4 a5 f0 E- r: W  W: n
2.为了正确识别来自主机PC的设备接口,并在连接开发板之前,请安装www.st.com/stm32nucleo网站上提供的Nucleo USB驱动程序。
+ b) E& G1 v2 b0 `* r# L# B3.要为电路板供电,请通过ST-LINK上的USB连接器CN1用USB电缆“ Type-A to Micro-B”将STM32 Nucleo-144电路板连接至PC。结果,绿色LED LD6(PWR)和LD4(COM)点亮,红色LED LD3闪烁。/ R9 b0 k2 o9 z9 \- q
4.按下按钮B1(左边蓝色按钮)。' ?: n" d8 e- L! ?) e( r5 H
5.通过单击按钮B1观察三个LED LD1至LD3的闪烁频率变化。
+ I! c% e) e/ C1 S+ W6.可在www.st.com/stm32nucleo网站上获得允许用户使用Nucleo功能的软件演示和几个软件示例。
; t5 N9 w1 }3 Y% o6 Q7.使用可用的示例开发应用程序。
" p7 o, o. B, L' w+ m3 A5 B
2 }/ d1 S4 q* ^6 硬件布局和配置
& p; C6 ~0 c6 @4 dSTM32 Nucleo-144板采用144引脚LQFP封装围绕STM32微控制器进行设计。
% g, ]! y" j5 Y' p  u) b图3显示了STM32及其外围设备(ST-LINK / V2-1,按钮,LED,USB,以太网,ST Zio连接器和ST morpho接头连接器)之间的连接。
% _$ w& O7 j. S; Z# G图4和图5显示了这些功能在STM32 Nucleo-144板上的位置。3 U1 H3 ]8 c8 K
电路板的机械尺寸如图6和图7所示。
2 [/ C( }) {" z+ z( p" d" T: u: Z& z& h6 y! p) W/ U
图3.硬件框图
! J' `6 i$ _5 `- y
1 f; Y, e. S2 @" J$ G9 r. j [MYON678SE@U}HMNBHRU]KO.png 2 O. ]4 h% D) D* Q- f! @; k7 m% a, X7 ^

& m. O0 n, l& T# ?4 `8 G# i2 m图4.顶部布局; W2 b& T- `. H& U6 p& U1 ]

6 L5 x/ _/ M7 g/ e9 ~0 d 8KR6XFD83IAJL)FE`{(PSZL.png " H- e4 W6 q, M

8 t/ L: w8 ?0 ]4 }( z/ D8 s图5.底视图
* |6 @& Y# z$ m& F' [; C" g+ Q
& B  {+ ^- J: g5 i8 g A$%MW(]K7P825H~O_44VD`E.png
% }' N- m5 {! n2 a. x# X2 d; }/ y
( W1 B: ]. V, L) `7 |. O. Q5 z6.1 机械制图* s$ P: _: {8 ~2 @) M( r. _1 O! i
空
9 Y* `  T$ V: t$ G( p: u& Q' S" ?) w" F9 G# C
6.2 可切割PCB3 Z* x) Z; C! B* M9 r; y& v
STM32 Nucleo-144开发板分为两部分:ST-LINK和目标STM32。可以切割PCB的ST-LINK部分,以减小电路板尺寸。在这种情况下,剩余的目标STM32部分只能由ST morpho连接器CN11上的VIN,E5V和3.3 V供电,或者由ST Zio连接器CN8上的VIN和3.3 V供电。通过ST morpho连接器上的CN6和SWD可用信号之间的连线(SWCLK CN11引脚15,SWDIO CN11引脚13和NRST CN11引脚14),仍然可以使用ST-LINK部件对STM32进行编程。
0 Y1 W7 \- L4 \) i, u; ?9 U; [* H+ M2 [, t8 z% K9 J- m( h
6.3 嵌入式ST-LINK / V2-1/ {0 D/ j% |4 V- i* z+ i+ [
ST-LINK / V2-1编程和调试工具集成在STM32 Nucleo-144板上。
' Q; s3 d) O1 k1 Z- i1 ?6 KST-LINK / V2-1使mbed的STM32 Nucleo-144板成为mbed。6 S1 k: H/ v2 G& y* [7 y# d1 N/ M

- ?" ~3 P9 o6 A* x0 @# G嵌入式ST-LINK / V2-1仅支持STM32设备的SWD。有关调试和编程功能的信息,请参考STM8和STM32的ST-LINK / V2在线调试器/编程器用户手册(UM1075),其中详细介绍了所有ST-LINK / V2功能以及ST概述-LINK衍生产品技术说明(TN1235)。
0 N# y2 ~; p( j% E0 j# ]/ }/ Y: e' P, Z. w
与ST-LINK / V2版本相比的更改如下所列。4 `7 J) S- j/ I' }& G3 k0 }
ST-LINK / V2-1支持的其他功能:
6 E3 B* H1 `3 q0 R+ R/ S7 ?5 d+ Y# m. q* Z6 {4 t% F
• USB软件重新枚举
. q% K8 y* G, C/ j$ U( w• USB上的虚拟com端口接口( s6 [. F! R6 i5 s
• USB上的海量存储接口
# a8 r& ?- h9 C; C( r6 b4 y. @• USB电源管理要求USB上的电流超过100mA8 M" I3 P' X0 f8 p4 p
4 m5 r4 U, O6 i
ST-LINK / V2-1不支持的功能:- ~, [  n8 d. g7 V' F( x

  Z& }; c* b6 H% {  A' P• SWIM界面
& A; [1 g9 [% o, `• 最小支持的应用电压限制为3 V
4 F: {: E8 N5 ^* F9 y( s; `/ p, s$ i" x9 D# K  l# g! Q  w/ K* b! [
根据跳线状态,有两种使用嵌入式ST-LINK / V2-1的不同方法(请参见表4):
0 S& ]/ t" d" I4 O/ b$ b. y" v4 j7 Z0 c
• 在板上编程/调试STM32; o/ {: r/ z& o4 ^. l; r
• 使用连接的电缆在外部应用板上编程/调试STM32 到SWD连接器CN6
/ J! ?! y8 v# Y" S
& q+ i4 }7 f( b9 H# T% [9 h表4.CN4跳线的状态
9 S7 U4 M- c, S7 S* H& V1 f8 H( S( W; r! p5 \' K5 m% w0 f
KV_RG]6DHPB}584_72DLI{Y.png
0 }7 m+ ?, u- W1 M: ~, P! A& L5 Y! ~7 P/ [. B3 `1 |+ S' @
0 e! S7 S. u+ l9 y6 e* ~7 j
6.3.1 嵌入式ST-LINK / V2-17 f/ x9 ]1 ~  R2 r$ D; `, R
如果在安装驱动程序之前将STM32 Nucleo-144板连接到PC,则PC设备管理器可能会将某些Nucleo接口报告为“未知”。9 r) C( {9 `; ~& K2 E
为了从这种情况中恢复过来,在安装专用驱动程序后,必须在设备管理器中手动更新STM32 Nucleo-144板上找到的“未知” USB设备与此专用驱动程序的关联。3 R7 a' {9 Q4 D0 Z5 K
注意:建议继续使用USB复合设备
' e/ X* H8 c  F. `- L: X- i$ C9 _/ y6 ~5 S, {# Q# D
6.3.2 ST-LINK / V2-1固件升级5 H  Y. j  ]) {: L' j( K, B* l
ST-LINK / V2-1内置了固件升级机制,可通过USB端口进行原位升级。由于固件可能会在ST-LINK / V2-1产品的生命周期内发展(例如,新功能,错误修复,对新微控制器系列的支持),因此建议将ST-LINK / V2-1固件保持在最新状态。
% w6 ~8 W' i5 I0 o3 g( Q; d' N) y6 X/ Z. ^7 r7 t. z, Z& ]
6.3.3 使用ST-LINK / V2-1对板载STM32进行编程和调试) N7 k5 A- h; b# l
要对板载STM32进行编程,请在连接器CN4上放置两个红色标记的跳线,如图9所示。不得使用CN6连接器,因为它可能会干扰与Nucleo-144板的STM32微控制器的通信。 。
) D7 E% p2 y$ u( W图9.连接STM32 Nucleo-144板以对板载STM32进行编程! b1 V4 z& ^1 z5 K  }: x6 S0 p

0 }4 H! U2 \" T  _% l2 M U9]HAKD`D7EM38SH@F6(SAV.png
6 v$ ?& e1 U  x: P) Y, o
* S4 [! t: N) P! _3 O* p/ H6.3.4 使用ST-LINK / V2-1编程和调试外部STM32应用9 H* t1 k) ^0 a  N! U9 C
使用ST-LINK / V2-1在外部应用程序上对STM32进行编程非常容易。, N. {/ |' {$ b6 f0 P0 g
只需从CN4卸下两个跳线帽,如图10所示,然后根据表5将应用程序连接到CN6调试连接器。. I' h$ |/ c- t( o  n3 O
注意:当在外部应用中使用CN6引脚5时,SB111 NRST(目标STM32 RESET)必须为OFF。
& Y+ b* I: M, c( ?& E/ Y3 R表5.调试连接器CN6(SWD)/ _1 G. |' b+ Q1 P
8 ]' ]- x1 g8 r  r% Z/ d0 m2 p
]P3LDYUM4}3RC6NGJK$T92W.png
6 D- S1 Z: c! C. K0 Q4 j4 [/ |, x/ C8 J. x% w

- F. {! L! q$ B" W0 Y$ L7 R6.4 电源和电源选择
: U+ b( D; x( t8 V5 A电源可以由主机PC通过USB电缆提供,也可以由外部电源提供:CN8或CN11上的VIN(7 V-12 V),E5V(5 V)或+3.3 V电源引脚。如果使用VIN,E5V或+3.3 V为Nucleo-144板供电,则该电源必须符合标准EN-60950-1:2006 + A11 / 2009,并且必须是受限的安全超低电压(SELV)功率能力。7 [. i* d  J4 [  @  ~/ G' Q
如果电源为+3.3 V,则ST-LINK未通电且无法使用。
. U' \% o/ R0 y) @5 Q4 g. S4 z( ]4 U; G' Z: C  Q
6.4.1 来自ST-LINK / V2-1 USB连接器的电源输入
( p; j( p; S( J  u* F5 ASTM32 Nucleo-144板和屏蔽板可以通过在JP3的引脚3和4之间放置一个跳线,从ST-LINK USB连接器CN1(U5V)供电,如表8:与电源相关的跳线所示。请注意,在枚举USB之前,仅为ST-LINK部件供电,因为此时主机PC仅向开发板提供100 mA的电流。在进行USB枚举期间,STM32 Nucleo-144板需要300mA的电流流向主机PC。如果主机能够提供所需的电源,则为目标STM32微控制器供电,并且绿色LED LD6点亮,因此STM32 Nucleo-144板及其屏蔽最多消耗300 mA电流,而不是更多。如果主机无法提供所需的电流,则不为目标STM32微控制器和扩展板供电。结果,绿色LED LD6保持关闭状态。在这种情况下,必须按照下一节中的说明使用外部电源。3 z2 `. A3 m2 P; ^3 B- ?9 f* a7 u% x
USB枚举成功后,通过置位PWR_EN引脚来启用ST-LINK U5V电源。该引脚连接到电源开关(ST890),后者为电路板供电。该电源开关还具有电流限制功能,以在电路板上发生短路时保护PC。如果板上出现过电流(大于500 mA),则红色LED LD5点亮。/ [8 X8 Y; C$ A7 e: n/ k
JP1由USB(U5V)供电时根据电路板的最大电流消耗进行配置。可以将JP1跳线设置为ON,以通知主机PC最大电流消耗不超过100 mA(包括电位扩展板或ST Zio屏蔽)。在这种情况下,USB枚举将始终成功,因为向PC请求的电流不超过100 mA。表6总结了JP1的可能配置。8 H' s% B. B+ T. ^" M* H
表6.JP1配置表- k9 }0 @. @6 o; E7 M

. {# M7 q( T3 J $BUFT{`)[$}99VT%O7B[%%4.png % l- H: H$ h2 J* [

9 R/ D) X, s( E) r, g2 w( T$ I6 g注意:如果STM32 Nucleo-144板及其屏蔽层的最大电流消耗如果板卡的电流超过300 mA,则必须为STM32 Nucleo-144板卡供电。连接到E5V,VIN或+3.3 V的外部电源。
+ |2 b/ S  d$ @/ M注意:如果开发板由USB充电器供电,则没有USB枚举,因此绿色的LED LD6永久保持OFF状态,并且目标STM32不供电。在这种特定情况下,必须将跳线JP1设置为ON,以便无论如何都可以为该板供电。但是无论如何,U4会将电流限制为500 mA(ST890)。0 G9 K5 o: \% N0 v# G1 N: [# y
6 @7 x& h* u, a$ v' s$ @
6.4.2 外部电源输入) d1 m' ~, m& N; [# q6 j5 Q5 J( O
根据所使用的电压,Nucleo-144板及其屏蔽板可以通过外部电源以三种不同的方式供电。表7总结了这三种电源。
- a, Z2 K" }( `. i当STM32 Nucleo-144板由VIN或E5V供电时,跳线配置必须如下:0 Y5 I* n5 ?3 W* U; p
# r0 t7 s7 |3 t( w, }9 O
• 使用E5V,则JP3的引脚1和引脚2闭合;使用VIN,则JP3的引脚5和引脚6上闭合& `  E) A) [- i/ Y& ^' k( y
•JP1跳线断开
0 s: I9 j9 L" N0 q  A. e! m+ @& Z* ]3 m; N  C) v7 g
表7.外部电源9 K3 k. Q  N0 T/ x6 K

4 J9 n! _4 M$ I3 P' U, Q G(U@3IMZB30TQT9_%U)OI2N.png ) G8 J0 S1 Y7 I6 I9 \, D
2 I: l( u+ @' I# W8 R
可以通过跳线JP3选择5 V电源,如表8所示。( B- [5 \& z. c: Y0 [9 t4 I. x+ q
表8.电源相关跳线
) T, v+ X# H2 x8 D* D# `6 k* `- O% j
%I%`IPQJSNJYO`[[RGRY`SR.png - X4 H! g1 l5 h# {; x  c# j

' \1 z  d3 E0 F使用VIN或E5V作为外部电源6 H3 W$ v- y: x  r4 H

4 P3 r! i# K# e( H# X当使用VIN或E5V供电时,仍然可以仅使用ST-LINK进行编程或调试,但是必须先使用VIN或E5V为电路板供电,然后再将USB电缆连接至PC。这样,借助外部电源,枚举成功。9 n2 [- t% E0 V$ _3 U
必须遵循以下电源顺序过程:: S( g( S7 f. a4 V( T
1.在E5V的引脚1和引脚2之间或在VIN的引脚5和引脚6之间连接跳线JP3! H% V, _3 K" h
2.检查是否已删除JP1
( O) {. A$ B( j3.将外部电源连接到VIN或E5V
. q$ d# t' j5 S  x, A" z7 Q1 {4.接通外部电源的电源7 V <VIN <VIN至12 V,对于E5V为5 V3 F# |( Y: u% J1 p: H1 R
5.检查绿色LED LD6是否已打开
3 Z. R3 F. k3 j/ E! i& \+ R6.将PC连接到USB连接器CN1
6 x& @5 P* w& D9 }% a0 S6 Y9 X' F7 s% j% {" r  _+ ]
如果不遵守此顺序,则可能首先通过USB(U5V)为电路板供电,然后通过VIN或E5V供电,因为可能会遇到以下风险:+ r$ r3 L8 ]8 D1 `3 G6 S
1.如果电路板需要超过300 mA的电流,则可能会损坏PC或限制PC所提供的电流。因此,该板未正确供电。
2 _3 \. \( ?; O1 g! w" e, W2.枚举时要求300 mA(因为JP1必须为OFF),所以如果PC无法提供该电流,则存在拒绝该请求并且枚举不成功的风险。因此,该板未供电(LED LD6保持熄灭)。
: m; z; ]3 i# i& O' O- \3 t! p' d
外部电源输入:+ 3.3 V9 q. T4 |& A' N$ m& @( K
当屏蔽板提供3.3 V电压时,直接将+3.3 V(CN8引脚7或CN11引脚16)用作电源输入是很有趣的。在这种情况下,由于ST-LINK未通电,因此无法使用编程和调试功能。
0 W! X$ B3 M. L$ \% D2 ?( a当电路板采用+3.3 V供电时,可能有两种不同的配置:
! F8 Q/ J5 U% C5 A0 f& ~9 R* e, @  m
• 删除了ST-LINK(PCB切割)5 @8 B4 }, }7 O
• SB3(3.3 V稳压器)和SB111(NRST)关闭。2 H3 Q. H) ]5 o# X" G# u
9 B/ m  f* t' r% b, s
6.4.3 外部电源输出0 G8 G0 N' x0 f9 g' D2 ~+ K3 K6 k
当通过USB,VIN或E5V供电时,+ 5 V(CN8引脚9或CN11引脚18)可用作ST Zio屏蔽或扩展板的输出电源。在这种情况下,必须遵守表7:外部电源中指定的最大电源电流。; B4 U+ S6 a* K/ j, d2 z
+3.3 V(CN8引脚7或CN11引脚16)也可用作电源输出。电流受调节器U6的最大电流能力限制(最大500 mA)。
" Q4 Z" g5 ?* P; o& V( q) Z+ P: p2 M( \% y. V. b, s
6.5 LEDs: w- r( l+ m5 T4 X. n/ r
用户LD1:绿色的用户LED连接到与ST Zio D13对应的STM32 I/O PB0(SB120 ON和SB119 OFF)或PA5(SB119 ON和SB120 OFF)。
3 F: l0 T7 Y' |4 M9 b用户LD2:蓝色的用户LED连接到PB7。
6 O  {- x* _5 }; `用户LD3:红色的用户LED连接到PB14。" ^7 h9 a  R- E' U
当I / O为HIGH时,这些用户LED点亮;当I / O为LOW时,这些用户LED熄灭。5 x0 o. [- }; q$ D6 J% R
LD4 COM:三色LED LD4(绿色,橙色,红色)提供有关ST-LINK通信状态的信息。 LD4默认颜色是红色。 LD4变为绿色,表明PC和ST-LINK / V2-1之间的通信正在进行,并具有以下设置:
3 i4 D( j3 m. \  @) m8 F
& H/ {8 e% h2 i1 J0 j! D•缓慢闪烁的红色/熄灭:在USB初始化之前开机. i% z. I7 E. p
•快速闪烁的红色/熄灭:在PC与ST-LINK / V2-1之间的第一次正确通信之后(枚举)
$ Z$ g, Y6 `$ S0 [•红色LED指示灯亮:当PC与ST-LINK / V2-1之间的初始化完成时
& x2 C4 j4 ?4 X9 a( C, g# u% R•绿色LED指示灯亮:目标通信成功初始化后
! z' t/ s) |7 j- ]/ m•红色/绿色闪烁:与目标设备通信期间* I3 D3 v" h& F8 Y9 \- j
•绿灯常亮:交流成功) f* X4 ]6 S3 m. `+ E' U1 f: C2 H
•橙色常亮:通信失败# H- @' n( k0 \2 m) X
4 R" E6 v: t+ [7 Z8 G1 m1 |
LD5 USB电源故障:LD5指示USB上的电路板功耗超过500 mA,因此用户必须使用外部电源为电路板供电。
3 z" U! _' g! q( F" O: L3 WLD6 PWR:绿色LED指示灯指示STM32部件已通电,并且CN8引脚9和CN11引脚18可用+5 V电源。
! W& L* T  \1 R7 ]% fLD7和LD8 USB FS:请参见第6.10节:USB OTG FS或设备) S: ?/ w8 R- Q+ Z$ M, l+ h
5 `/ [6 a2 D( n: u" V; A
6.6 按钮
+ Y+ E( ~  h+ e* CB1用户:默认情况下,用户按钮已连接到STM32微控制器的I/O PC13(支持篡改,SB173 ON和SB180 OFF)或PA0(唤醒支持,SB180 ON和SB173 OFF)。( O7 T9 D/ ^& x) d! d* |; L
B2复位:此按钮连接到NRST,用于复位STM32微控制器。# t9 F9 P4 C! d- X% K. \! G
, U; e4 f& G% u+ E
6.7 JP5 (IDD)6 a# L" [/ z8 O6 V0 Y  G% `
跳线JP5(标记为IDD)用于通过卸下跳线并连接电流表来测量STM32微控制器的功耗:
1 c6 M2 w+ y" ]! V: u7 n: E# |: m  l0 q6 |( l' A6 S
•JP5开启:STM32通电(默认)1 r& F; O1 Y) d* {/ ?4 G
•JP5 OFF:必须连接一个电流表以测量STM32电流。如果没有电流表,STM32未通电( Z' p  S* u5 T0 z2 \7 ^/ M

" Z3 A# j$ N4 L2 {为了获得正确的电流消耗,应将以太网PHY设置为掉电模式或删除SB13。有关详细信息,请参见第6.11节:以太网。
; R9 i. X+ U5 S3 F$ @7 P- z% }% F. G, L
6.8 OSC时钟$ A# C* A' ~2 ~2 ?( h9 [7 e
6.8.1 OSC时钟供应7 N* d$ p0 X, Z* ]
有四种方法可以配置与外部高速时钟(HSE)对应的引脚:/ h- ^7 t8 i$ k0 m; U! ?0 i
来自ST-LINK的MCO(默认):ST-LINK的MCO输出用作输入时钟。这个频率无法更改,固定为8 MHz,并连接到STM32微控制器的PF0 / PH0-OSC_IN。配置必须是:
1 u4 W9 B+ N# R% S  C' N) Z4 J- m2 D- P* N, r& I
– SB148 断开
4 z/ C+ }& n% R1 A+ P. Y– SB112和SB149 闭合$ d- J; Q; Q; q6 _3 m0 @
– SB8和SB9 断开
1 N6 N3 f" A* j8 E  ]5 t. ?: @4 b
X3晶体的HSE板载振荡器(未提供):有关典型频率及其电容和电阻的信息,请参考STM32微控制器数据表以及STM8S,STM8A和STM32微控制器的振荡器设计指南,关于振荡器设计的应用笔记(AN2867)。 X3晶体具有以下特性:8 MHz,8 pF,20 ppm。建议使用NIHON DEMPA KOGYO CO.,LTD。制造的NX3225GD-8.000MEXS00A-CG04874。
6 @6 x* o" z! A8 h( }$ Z( n配置必须是::
$ y6 S( g, H1 M' y# o* Y) u! |5 `. B# g- I
– SB148和SB163 断开8 |0 H2 g4 H) d7 \* [3 ^
– SB8和SB9焊接, ^  X% I$ ?/ ^, C: S) T
– C37和C38与4.3 pF电容器焊接8 @  j1 Y# U9 l' ^- A
– SB112和SB149 断开% d2 b# `: @) x3 q! o! k, c: n
5 f- Y/ g* X  |* e2 e8 K5 C
来自外部PF0 / PH0的振荡器:来自外部振荡器的CN11连接器的引脚29。配置必须是:$ _% |' k  ~; ?# ~/ o& s" P

3 y  Q. s8 ?8 [- x– SB148 闭合
" E/ z3 l2 M2 b/ i- M– SB112和SB149 断开
$ c- y/ U2 ?4 G; `3 T$ E– 移除B8和SB9% {1 j. s  A! [* G& ]) @

2 i7 D/ ^% G2 S6 K! d& p未使用HSE:PF0 / PH1和PF1 / PH1用作GPIO,而不是时钟。配置必须是:
6 G$ J5 r7 C9 G& |4 H! y* I7 T7 i. p. Y, \# m' M; `
– SB148和SB163闭合" V& p: y/ w5 N
– SB112和SB149(MCO)断开
0 B. o* f/ n* `" D1 |– 移除SB8和SB9
4 Q( x$ J& Y, Q  T
! A! W) @: C& z+ l1 O9 v- H. |6.8.2 OSC 32 KHz时钟电源
( A+ w9 _' }- E7 u5 G; K* U可通过以下三种方式配置与低速时钟(LSE)对应的引脚:
) E3 P4 @, o7 ^- a4 {: n•板载振荡器(默认):X2晶体。有关STM32微控制器的振荡器设计指南,请参考STM8S,STM8A和STM32微控制器的振荡器设计指南应用笔记(AN2867)。建议使用Nihon Dempa Kogyo CO,LTD。的NX3214SA-32.768KHZ-EXS00A-MU00525(32.768 kHz,6 pF负载电容,200 ppm)。5 L0 U4 f* y4 v

, m% }* z/ Y$ `* I4 d% {& W注意:对于STM32F0和STM32F3系列,由于电路板上晶体的负载电容为6 pF,建议使用LSE的低驱动模式配置(LSEDRV寄存器中的低驱动能力)。
) W' t2 R7 r  a; u$ w外部PC14的振荡器:外部振荡器通过CN11连接器的引脚25。配置必须是:
3 D# Z. `* b, S  I
: p- |& G& D+ A, H8 c8 u0 i4 _– SB144和SB145 闭合
3 `% x* {& a' \" q$ l– 移除R37和R38
$ y( r, l, f, X' w/ ~' P' A7 Y  {7 v6 p3 Q2 e5 A6 S
不使用LSE:PC14和PC15用作GPIO而不是低速时钟。配置必须是:, j, T# o4 G5 h/ `: B! F& ?% H8 R
! L  z: J$ C; R  F7 Q1 j
– SB144和SB145闭合, t" i. b8 N; L, q1 i5 }  S
– 移除 R37和R38
4 F) h% d* b0 r( N% y( S& G- e
- C7 C+ g! t0 |. H' C6.9 USART通讯
9 w8 M8 L9 D, E% k- \STM32的PD8和PD9上可用的USART3接口可以连接到ST-LINK或ST morpho连接器。通过设置相关的焊桥可以更改选择。默认情况下,目标STM32和ST-LINK之间的USART3通信处于启用状态,以支持mbed的虚拟COM端口(SB5和SB6 ON)。- C! Y) X4 v8 o/ O' N
1 O# Z" ^4 o: o3 p! C. |/ ?
表9.USART3 引脚
4 [2 L) N2 G3 e% c% c# i0 w
( J+ w+ C* g4 t7 G, \ XA7(SNPIYNGO3D&#039;]}%YFR.png
7 x( p# T2 ^! N# P5 e- I
; J) \" N% d" Z) G( T( c; d# ~0 F, N- U  Y
6.10 USB OTG FS or device
, y1 g8 g& o% O5 a+ cSTM32 Nucleo-144板通过连接到VBUS的USB Micro-AB连接器(CN13)和USB电源开关(U12)支持USB OTG或设备全速通信。* V0 y. T' _: a7 I+ H: I
注意:NUCLEO-F303ZE开发板仅支持USB设备FS。所有其他STM32 Nucleo-144板均支持USB OTG。
% l$ a1 ?$ m" `# L" c! ^' P- ]' G/ h# A" b
警告:USB > Micro–AB连接器(CN13)无法为Nucleo-144板供电。为避免损坏STM32,必须在连接CN13上的USB电缆之前给Nucleo-144供电。否则有在STM32 I/O上注入电流的风险9 T+ j/ b7 _& `% w0 h
) E6 w& ^4 F# d; \+ j
在以下情况之一中,绿色的LED LD8点亮:
% {7 t# _1 J: t; O* W! P
2 t6 E! r& d/ m3 S& @1 y3 T• 电源开关(U12)处于打开状态,并且STM32 Nucleo-144板用作USB主机
4 F6 `0 I9 w0 T& D5 Q• 当STM32 Nucleo-144板用作USB设备时,VBUS由另一个USB主机供电。% q) l! _% a8 b% v9 n; e

3 r0 T9 u% o, E' M2 {2 i如果在USB主机模式下在VBUS上启用+5 V,则发生过电流时,红色LED LD7点亮。
5 v$ m. y- s* z! x9 y& A1 u, H- ]/ L( [3 T  n# r3 }
注意事项:
( {+ ]2 p: G: d. l' A5 \1.使用USB OTG或主机功能时,建议通过外部电源为Nucleo-144板供电。
; w( _) ~0 ]0 z- e, f* \* M+ E2.使用USB OTG FS时,JP4必须为ON。
+ `, @- ?8 c: {. A0 i" g* O5 `9 b6 u4 {: x
NUCLEO-F303ZE板不支持OTG功能,但通过USB Micro-AB连接器(CN13)支持USB 2.0全速设备模式通信。 USB断开连接仿真由PG6实现,该控件控制USB D+线上的1.5 K上拉电阻(R70)。由于R62和R63电阻之间的桥接,PG7上可以检测USB连接器(CN13)上的5V电源。% W. ^2 T2 d; [& R( H

' m, L0 z: b! f2 m6 I% ]表10.USB 引脚配置: P* y2 J1 B# H+ R0 _2 D  f* C

+ x3 c4 y; f& d+ ?5 v QND%S8[$LLW9RCKA9IZBSU5.png
: p+ ~# c( e  Z0 d ZI5[HCSZ%NDG}R[BD75BLMO.png : K) w( x' c* w8 }) n1 V6 B! r

' [& f% n4 D8 Y) w& z9 g
, O$ h: {& e$ y, @ESD保护部分ESDA6V1BC6在USB端口上实现,因为STM32上的所有USB引脚都可以用作STM32 Nucleo-144板上的VBUS或GPIO。
) Y; W$ F4 |4 D5 l6 `' J* M1 Q7 L注意:如果这些引脚仅专用于USB端口,则USBLC6-4SC6保护部分更适合于保护USB端口。如果不使用USB引脚ID,则可以使用USBLC6-2SC6。1 L1 F( [; f5 V  U4 i

  |! l/ M3 I: {) V4 J: w) J' F6 {6.11 以太网 Ethernet
6 s# V0 l5 E) C9 E$ e( WSTM32 Nucleo-144板通过PHY LAN8742A-CZ-TR(U9)和RJ45连接器(CN14)支持10M / 100M以太网通信。以太网PHY通过RMII接口连接到STM32微控制器。 PHY RMII_REF_CLK产生STM32微控制器的50MHz时钟。+ U* }" Z5 C1 d# G

9 c+ g( _$ Y1 S$ ^6 M; `/ L注意事项:
# z4 M" `+ G& i+ ~& t- a1.NUCLEO-F303ZE,NUCLEO-F412ZG,NUCLEO-F413ZH,NUCLEO-F446ZE和NUCLEO-F722ZE不支持以太网功能。
: E& n0 f: B. V2.使用以太网时,JP6和JP7必须为ON。
- B# O  B3 D1 g3.以太网PHY LAN8742A应该设置为掉电模式(在这种模式下,以太网PHY参考时钟关闭),以实现预期的低功率模式电流。这是通过将以太网PHY LAN8742A基本控制寄存器(位于地址0x00)的位11(掉电)配置为1来完成的。 也可以删除SB13以获得相同的效果。! J9 @- _% Q% d4 \

4 g) ~( Z7 u! {, x( |: F表11.以太网引脚
' y! e5 q& u$ [) f
" N# E- p5 |. N3 {9 y) I ~O034BPALR0E}$TA~NPMIO5.png % ^- D/ ?. h& y6 a
8 n, U: i9 s" ^2 W  s
  X$ p6 N; ^8 u& b% v2 }
6.12 焊接跳线1 x3 K0 c' m/ f, q% n2 e. M& p" G
SBxx位于Nucleo-144板的顶层,而SB1xx位于底层。0 U1 r2 ^1 b+ Y  c/ @
表12.焊接跳线0 R* B  \2 G' Z% ^

( a3 Z9 G0 j, M6 p! w9 b4 l S_NIE4USMU]Z)B[4_]P$[9I.png
- n: t, t. p; _* l7 z HF{RQ@0K_U%~9NU6LB@P[MD.png 5 J: k0 s4 |/ o' ^, g* {* e
$LH71P{2A%]_`V6_N9[}9DE.png 6 u& A( B% ]& x2 D, ]/ a
YWKB]_(M61U5BM1UBABVBA6.png
9 {7 Q0 [+ q# @6 q6 }. G" a9 u9 g- N" r+ P* |
TXWYXZ3{1R~O5JCR@V(J6HN.png
, L3 P6 q4 l1 ~1 @' ?( |! [4 Y4 k9 z9 C3 ?! O' r4 K3 j
STM32 Nucleo-144板上存在的所有其他焊桥均用于配置多个I / O和电源引脚,以实现功能和引脚与所支持的目标STM32的兼容性。$ u6 g) f  H) W& i& X2 p
根据支持的目标STM32,STM32 Nucleo-144板出厂时已配置了焊桥。* y+ Q$ [6 {. v' d& N3 E: [

7 O# O" {1 U- f* @, R6.13 扩展连接器6 g; ]* m& V9 J  }# L
对于每个STM32 Nucleo-144板,下图显示了默认情况下连接到ST Zio连接器(CN7,CN8,CN9,CN10)的信号,包括对ARDUINO®Uno V3的支持。
) H. T6 d/ Q0 L* ]' [& \. _, s此部分请参考实际的Nucleo 板以及手册。
; u1 a3 @' K3 D6 g. M$ S" K- v
3 D) {4 J  N) h2 x5 R7 M8 k6.14 ST Zio连接器
6 |7 |. ]8 Y) V8 }  e5 j; L6 t9 jCN7,CN8,CN9和CN10的顶部连接器为母头,底部连接器为**。它们包括对ARDUINO®Uno V3的支持。大多数为ARDUINO®Uno V3设计的屏蔽都可以安装到STM32 Nucleo-144板上。, }0 L7 I1 {. k0 H
为了应对ARDUINO®Uno V3,请进行以下修改:$ b/ ~3 n- h  b

  T) z" K; _+ J" \8 c8 Y! b1 L•SB138和SB143应该为开。
0 t1 y, [  c/ R& }9 o- X•SB140/147/150/157/167/171应该为OFF,以将I2C连接到A4(引脚5)和A5(CN9的引脚6)上。& F. t& O$ R7 a2 @7 l& P1 V
6 ]$ E- I/ t! H6 \' T. p7 }
注意:1 STM32微控制器的I / O兼容3.3 V,而不是ARDUINO®Uno V3的5V。
2 b* \! Z4 @0 s2 n( a注意:2在使用CN7引脚6上提供VREF +电源的ARDUINO®屏蔽之前,必须先移除SB12。有关SB12的详细信息,请参见表12:焊桥。: R  W8 S/ u" n* q9 J3 ?
表13至表20显示了ST Zio连接器上每个STM32微控制器的引脚分配。" b4 G  ^2 s2 R$ z
) V3 I( H* K( N  D) U' s
引脚功能看数据手册。5 l  g; I* Y- U* {1 m$ a5 e* z# `* l

# O% u- t- n' A* d& g( P0 c6.14 ST morpho连接器
4 ?/ {; w( \7 i( g8 `) SST morpho连接器包含**连接器封装CN11和CN12(默认情况下未焊接)。它们用于将STM32 Nucleo-144板连接到扩展板或放置在STM32 Nucleo-144板顶部的原型/包装板。 STM32的所有信号和电源引脚均在ST morpho连接器上提供。该连接器也可以通过示波器,逻辑分析仪或电压表进行探测。
4 [$ s4 Q; v2 M7 d/ D表21和表22列出了ST morpho连接器上每个STM32的引脚分配。" }5 }2 w2 ]1 Z& |  p6 O
————————————————* ?+ r5 t1 I. h! x" S- F/ Y3 x
转载:fafuwxm
: m1 G/ g1 U; G. ^) t' F4 B6 i$ G+ J* r# U' v! O0 l

) U* S. m5 a* r  M7 I% o6 i$ @, D2 i
% t. T+ P& a  i4 Y8 Z& y
8 `8 P  Z0 \$ ^- A5 _
12WH4B6YY)A{M(LI9F7PWDS.png
PC6O1IW0KKNO2OOVT[S14(T.png
赞 收藏 评论0 发布时间:2022-8-23 16:13

举报

0个回答

所属标签

相似技术帖

官网相关资源

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