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

【经验分享】STM32F4 GPIO八种模式及工作原理详解

[复制链接]
STMCU小助手 发布时间:2021-10-12 14:15
1 GPIO简介
# l3 G) m' \9 z0 C+ \GPIO,即通用I/O(输入/输出)端口,是STM32可控制的引脚。STM32芯片的GPIO引脚与外部设备连接起来,可实现与外部通讯、控制外部硬件或者采集外部硬件数据的功能。
1 L3 q8 D6 X" D# x; ~9 Q0 w( C0 m# `- n+ n0 S  c: J& F0 x2 z
. {1 z: m* @0 f+ J/ J
STM32F407有7组IO。分别为GPIOA~GPIOG,每组IO有16个IO口,共有112个IO口  通常称为 PAx、PBx、PCx、PDx、PEx、PFx、PGx,其中x为0-15。  并且F4系列是基于Cortex-M4内核  ! V- F& q4 l# q/ k1 n$ y

, C8 K5 P0 y' h- O# v" \
9 `' Y3 E8 q' I( y# m- l
GPIO的复用:1 V/ _% e4 L# \* k
0 ~% g" D0 c3 U6 ?; T, H
$ U; @( v6 `& w' k6 y+ _
STM32F4 有很多的内置外设,这些外设的外部引脚都是与 GPIO 共用的。也就是说,一个引脚可以有很多作用,但是默认为IO口,如果想使用一个 GPIO内置外设的功能引脚,就需要GPIO的复用,那么当这个 GPIO 作为内置外设使用的时候,就叫做复用。    比如说串口  就是GPIO复用为串口0 i* b+ ~: j; P' Z

* c6 i- A1 i: ]( b* {2 GPIO的工作模式% C) g. W+ B% I! _. h" x
1、4种输入模式
# d: g) r+ e9 M9 ]: I* N# ~
5 v- I; {! v2 ]6 G) ~/ b0 `
7 E. F" a) ^; ^6 j
(1)GPIO_Mode_IN_FLOATING 浮空输入/ L9 ?% m* R% c+ _% D
(2)GPIO_Mode_IPU 上拉输入
0 K0 m3 N5 A; L2 j/ R! W9 T(3)GPIO_Mode_IPD 下拉输入9 q5 H$ p) l1 j- j/ d
(4)GPIO_Mode_AIN 模拟输入
! W3 m  w' C- j( O# c2 X* R6 ~$ f- {5 d4 ?+ y* J, l. l
' m0 @6 d( L/ e) \
2、4种输出模式 ) H/ A3 f% y5 X+ x- i& J# r
  B: o/ W1 l$ J

6 I4 D+ K8 b8 @(5)GPIO_Mode_Out_OD 开漏输出(带上拉或者下拉)- l2 L$ ?2 o" d1 u
(6)GPIO_Mode_AF_OD 复用开漏输出(带上拉或者下拉)! q/ f/ L0 n. a, a/ w4 W: D9 \3 w
(7)GPIO_Mode_Out_PP 推挽输出(带上拉或者下拉)  @' n5 d4 e9 w; W1 T
(8)GPIO_Mode_AF_PP 复用推挽输出(带上拉或者下拉)
/ v6 {1 b* _% b5 K6 p8 U0 W3、4种最大输出速度) y: H: H" `3 h6 X
(1)2MHZ  (低速)
5 X4 h! b8 G7 ]) C9 t(2)25MHZ  (中速)$ u+ ?' a2 E+ C0 a, f' ]' i
(3)50MHZ  (快速)# D8 c8 P8 _5 u# a7 X# o
(4)100MHZ  (高速)/ [  d- Y+ u, C) g+ X2 ?. ]) m
3 o. X; y+ F* X
关于他们的定义,都在  stm32f4xx_gpio.h 中,都为结构体形式的定义
0 `+ N* o/ H, W$ o2 f& {! ^. v4 c$ w3 W* R
: U+ z6 L* x+ h2 H6 d
3 GPIO框图剖析
7 Z# D8 d! w, v% J: h7 n% D 14.png
0 J2 X& P1 k. N1 k( J我们所用到的每一个GPIO其内部结构都是这样,分别对应着GPIO的八种模式  这里我们简单的介绍下:
) f) x, C/ o# s) g/ K4 t- Q7 W" I
! F- y* l8 d5 R
保护二极管:  IO引脚上下两边两个二极管用于防止引脚外部过高、过低的电压输入,当引脚电压高于VDD_FT时,上方的二极管导通,当引脚电压低于VSS时,下方的二极管导通,防止不正常电压引入芯片导致芯片烧毁 / b) F  u; O; P/ S& X$ r" L
上拉、下拉电阻:控制引脚默认状态的电压,开启上拉的时候引脚默认电压为高电平,开启下拉的时候引脚默认电压为低电平
/ T$ c( h6 A# g& X. M2 XTTL施密特触发器:基本原理是当输入电压高于正向阈值电压,输出为高;当输入电压低于负向阈值电压,输出为低;IO口信号经过触发器后,模拟信号转化为0和1的数字信号    也就是高低电平  并且是TTL电平协议   这也是为什么STM32是TTL电平协议的原因
) \# @. Y: s! a! C P-MOS管和N-MOS管:信号由P-MOS管和N-MOS管,依据两个MOS管的工作方式,使得GPIO具有“推挽输出”和“开漏输出”的模式     P-MOS管高电平导通,低电平关闭,下方的N-MOS低电平导通,高电平关闭; P. S; Q0 H) p% ?/ D7 |
注:  VDD_FT  代表IO口,兼容3.3V和5V,如果没有标注“FT”,就代表着不兼容5V      
1 I# U# f' S, N1 w- ]/ I. Y6 z" S" U+ t' a$ ]

' r& n; B; i& ]' G* ` 在芯片数据手册的引脚定义中,会看到有“I/O电平”一列  有FT即为支持5V
6 F' P( U- q5 Y* @- }* e 15.png 9 r# I5 Q. d& M9 U% o5 p! w
4 GPIO的八种工作模式剖析:; k6 E# J6 t$ `1 R) X8 b+ |
浮空输入模式
/ n4 U/ O  Z+ l 16.png          : O: ~, {# g7 e, b: {' {
浮空输入模式下,I/O端口的电平信号直接进入输入数据寄存器。MCU直接读取I/O口电平,I/O的电平状态是不确定的,完全由外部输入决定;如果在该引脚悬空(在无信号输入)的情况下,读取该端口的电平是不确定的。 (接用电压表测量其引脚电压为1点几伏,这是个不确定值) 以用来做KEY识别
2 z( G7 f7 f6 B- x0 x. U" H( r& T. _0 ~  ~
0 `# p$ ?& T1 U' t; e. G
上拉输入模式
, ^5 G! `7 `+ |- l 17.png           ; U* e- Q" w; J! T! `6 H
IO内部接上拉电阻,此时如果IO口外部没有信号输入或者引脚悬空,IO口默认为高电平  如果I/O口输入低电平,那么引脚就为低电平,MCU读取到的就是低电平
7 F9 C$ |  }. o& ~1 M& B
* C7 F, z1 W' L" W6 L

% v- j. C9 j/ s. {8 a# wSTM32的内部上拉是"弱上拉",即通过此上拉输出的电流是很弱的,如要求大电流还是需要外部上拉。/ s( K8 K% Q/ X, l# O
# l3 ?4 o! t* ?% T! r+ n" j* K
- s' }& X" D. U# P
下拉输入模式
; k$ C# U$ C8 B& G& e 18.png      9 N$ A( w. T  `
IO内部接下拉电阻,此时如果IO口外部没有信号输入或者引脚悬空,IO口默认为低电平  如果I/O口输入高电平,那么引脚就为高电平,MCU读取到的就是高电平4 L: |( j9 J$ K0 e: S

3 N) s+ Z( z' U# X4 |1 Z模拟输入模式
( m7 K1 Z$ O. F+ f9 g* w 19.png          
# N3 [5 a/ L% F1 j" d当GPIO引脚用于ADC采集电压的输入通道时,用作"模拟输入"功能,此时信号不经过施密特触发器,直接直接进入ADC模块,并且输入数据寄存器为空 ,CPU不能在输入数据寄存器上读到引脚状态- r4 n9 g' T* r, B. J: u8 I/ U2 z
3 @8 e* v3 e4 d) b8 w% M
6 V1 s6 U2 S4 a& f2 f9 d- Z5 ?
当GPIO用于模拟功能时,引脚的上、下拉电阻是不起作用的,这个时候即使配置了上拉或下拉模式,也不会影响到模拟信号的输入输出. w2 b$ F, B% `, m/ A. O

$ o( X8 V/ u5 ~5 F) \
/ R+ r- r( v) t  _0 r5 |/ k+ j
除了 ADC 和 DAC 要将 IO 配置为模拟通道之外其他外设功能一律 要配置为复用功能模式,7 ?3 f7 N1 E( p# K4 t* p, E) T$ j

5 k. Z9 s$ t9 a& X$ L. D5 L
5 a# u* h5 k' Q) g
开漏输出模式(带上拉或者下拉)! t5 B" |/ z8 i  m' r
20.png
( _1 k0 ]# _) P* j在开漏输出模式时,只有N-MOS管工作,如果我们控制输出为0,低电平,则P-MOS管关闭,N-MOS管导通,使输出低电平,I/O端口的电平就是低电平,若控制输出为1时,高电平,则P-MOS管和N-MOS管都关闭,输出指令就不会起到作用,此时I/O端口的电平就不会由输出的高电平决定,而是由I/O端口外部的上拉或者下拉决定   如果没有上拉或者下拉 IO口就处于悬空状态) W6 q5 J' L) g& e! k. z5 ^* Y

# A9 |0 o' _. i
% _3 _; {6 M& e! g2 `, `
并且此时施密特触发器是打开的,即输入可用,通过输入数据寄存器GPIOx_IDR可读取I/O的实际状态。,I/O口的电平不一定是输出的电平   4 y' }0 ?: _5 |8 a' R9 _% s* D" F

# g) O& p, E  d# D# w
! Z+ A% l6 ~8 y" _  Y7 W5 ?$ Q) Y
推挽输出模式(带上拉或者下拉)
! x) o6 @/ Y/ A# R" m0 A( Y1 N 21.png , Y7 l" F! R( V3 w2 h: i" `! J7 N
在推挽输出模式时,N-MOS管和P-MOS管都工作,如果我们控制输出为0,低电平,则P-MOS管关闭,N-MOS管导通,使输出低电平,I/O端口的电平就是低电平,若控制输出为1 高电平,则P-MOS管导通N-MOS管关闭,使输出高电平,I/O端口的电平就是高电平,  外部上拉和下拉的作用是控制在没有输出时IO口电平
+ C1 g, \( k8 P0 S0 s( n
' ^. \* m3 G$ n$ `9 q( m

7 ^, s( E; n  J. a/ S1 L此时施密特触发器是打开的,即输入可用,通过输入数据寄存器GPIOx_IDR可读取I/O的实际状态。I/O口的电平一定是输出的电平   8 t! R1 K% e3 B4 D3 ?. q2 r
, x4 h( o7 |9 k/ e
# |, @: n" w+ w
复用开漏输出(带上拉或者下拉), }! Y) S6 y3 c6 I8 X- A
22.png ) Q& [- c8 d6 C; X0 N
GPIO复用为其他外设,输出数据寄存器GPIOx_ODR无效;  输出的高低电平的来源于其它外设,施密特触发器打开,输入可用,通过输入数据寄存器可获取I/O实际状态    除了输出信号的来源改变 其他与开漏输出功能相同* d0 F" h4 h* l" A

: S! P7 u) \! u+ e' [  |

/ ]; j& i) u' j! U0 d$ C  _复用推挽输出(带上拉或者下拉)
$ }. }4 s, @& W3 o1 k+ q 23.png                           ) Q0 b+ z! d7 \+ h& i
GPIO复用为其他外设(如 I2C),输出数据寄存器GPIOx_ODR无效;  输出的高低电平的来源于其它外设,施密特触发器打开,输入可用,通过输入数据寄存器可获取I/O实际状态    除了输出信号的来源改变 其他与开漏输出功能相同" ?* {; G; X; p2 a8 g! w

* t# p+ x5 c3 C开漏输出和推挽输出的区别:
6 j3 H- W% Z) F2 u6 M* e# H" ?- [' W1 v

1 h& K: a; x# u, v, T1 D0 m$ [( T推挽输出:
  b* O) u1 ^, g; b8 E6 F1 ^
: x3 ~6 H& w/ w, N7 j, }5 n1 V* L! A0 Q
7 n0 \, A# X" l( J
可以输出强高低电平,连接数字器件
7 R# ^( ^# |7 ~: W- V" s; V: v6 p
7 G1 d( U9 M; b6 Q, T
1 A. t0 i7 q4 z" Z0 s
推挽结构一般是指两个三极管分别受两互补信号的控制,总是在一个三极管导通的时候另一个截止.5 A  G+ |, E+ D+ D" S

9 O, W) k1 Q+ y, w

; U# a; o' B2 p$ L9 p& n$ g开漏输出:" k9 A- n) P, L/ N8 h  [& `

& J! C7 c, s/ r7 I6 M! R  v

5 G. J) f! u. N2 u( C; x; X+ M可以输出强低电平,高电平得靠外部电阻拉高。输出端相当于三极管的集电极. 需要外接上拉电阻,才能实现输出高电平  合于做电流型的驱动,其吸收电流的能力相对强(一般20ma以内);
3 C$ l6 w( A( |4 U( h- V* |2 O8 k" ]" |4 x7 x( E

/ q3 x7 C6 h, M/ F% b在使用任何一种开漏模式时,都需要接上拉电阻,否则只能输出低电平
% T; I8 F( y5 w 24.png
$ L6 w( v$ n* \: g9 N+ c7 P& x5 Y推挽输出电路: 其中IN端输出高电平时下面的PNP三极管截止,而上面NPN三极管导通,输出电平VS+;当IN端输出低电平时则恰恰相反,PNP三极管导通,输出和地相连,为低电平   ' j: H% Z! Q* e4 v1 H5 U
& |1 k; x: w- b! p+ r

& j. n8 _2 z" d8 |* {+ m6 i开漏输出电路:IN端输出低电平时,三极管导通,使输出接地,IN端输出高电平时,三极管截止,所以引脚既不输出高电平,也不输出低电平,为高阻态。为正常使用时必须接上拉电阻,
  u: t; o' W- ~& a5 a) x& n2 H; J: J- T
- A8 B1 l$ {& A2 J1 a2 b
在STM32中选用IO模式:$ E2 G: Q* z: a7 ~7 u/ [& k
" ~! }& y8 g( T3 v0 r& F

* t- e  U' f! x+ P* Q1 C+ ` 上拉输入、下拉输入可以用来检测外部信号;例如,按键等;; F1 \! h1 U5 `- W
模拟输入 ——应用ADC模拟输入,或者低功耗下省电) H( B3 f' u  W' ^
开漏输出一般应用在I2C、SMBUS通讯等需要"线与"功能的总线电路中。
1 U3 k1 Q2 P8 V! t8 j 推挽输出模式一般应用在输出电平为0和3.3伏而且需要高速切换开关状态的场合。在STM32的应用中,除了必须用开漏模式的场合,我们都习惯使用推挽输出模式。
- @7 Q# ^" L6 k复用功能的推挽输出_AF_PP ——片内外设功能(I2C的SCL,SDA)
  `: H! S6 i, L$ F; F复用功能的开漏输出_AF_OD——片内外设功能(TX1,MOSI,MISO.SCK.SS)
5 I* {& z! J; Y8 Q/ LF4系列与F1系列区别:4 s0 {+ G* `" F* j$ V2 o: ^
本质上的区别是F4系列采用了Cortex-M4内核  而F1系列采用Cortex-M3内核( e1 M, `% z' R, Q/ S& |
, F/ J8 q/ r. Z* r: h( Q
& b- C0 s, I8 \* J$ u& w" n
F1系列(M3)IO口基本结构:
5 a$ K: ]1 S3 a5 {1 Q+ \" `; C 25.png
$ b. X$ {- Q+ [+ ^4 jF4系列(M4)IO口基本结构:
9 T/ L) p  o$ z; U: y/ ^9 g% A 26.png ' C/ q. ]! e' O6 H, o
F4系列设计的更加高级与人性化,他将外部上下拉电阻转移到了输出/输入驱动器外部,使得输出模式下也可以实现内部上拉与下拉,方便了用户的使用,增加了灵活性
  G* f9 n+ g9 y, L' d/ ~2 `) v, {2 P( S. P
GPIO的初始化(F4)
0 m" n: T5 Y( y, t* D7 {这里我们以初始化LED为例
9 ~# [' r2 \, q: `2 P$ M; T/ L' O2 ^& D2 T6 e5 N# Q6 b

( Z" [5 p% `1 k* Q6 m0 G8 M7 A& l1.定义一个 GPIO_InitTypeDef 类型的结构体( t  d( S, \: V1 \5 {! A
  1. GPIO_InitTypeDef GPIO_InitStructure;   /*定义一个 GPIO_InitTypeDef 类型的结构体*/
复制代码
一共有5个参数
6 L: g) g6 ~# Z, P* D: r2 ^ 27.png
" s$ W/ U1 a8 G# K; S) D2开启 LED 相关的 GPIO 外设时钟1 Y& I: i7 m7 P
  1. RCC_AHB1PeriphClockCmd ( RCC_AHB1Periph_GPIOB, ENABLE);     /*开启 AHB1时钟*/
复制代码
   Q:为什么要设置时钟?$ R6 E8 ]! G! D$ O
0 K. Q" `& t6 ^  i

% k7 \. |! G. H# Z+ R4 [. e    任何外设都需要时钟,51单片机,stm32,430等等,因为寄存器是由D触发器组成的,往触发器里面写东西,前提条件是有时钟输入。stm32是低功耗,他将所有的门都默认设置为disable(不使能),在你需要用哪个门的时候,开哪个门就可以,也就是说用到什么外设,只要打开对应外设的时钟就可以,   其他的没用到的可以还是disable(不使能),这样耗能就会减少。
# }$ ^6 s9 L+ Y$ s) T# w7 e* Q6 i2 X
6 ^5 I, F: f8 l
4 k7 _+ [: G8 l( r
Q:为什么 STM32 要有多个时钟源呢?
- v! X. v- d( E) ^
: Z: w$ z. X1 g
. X/ ~8 R* J* L" d, z
因为首 先 STM32 本身非常复杂,外设非常的多,但是并不是所有外设都需要系统时钟这么高的频率, 比如看门狗以及 RTC 只需要几十 k 的时钟即可。同一个电路,时钟越快功耗越大,同时抗电磁 干扰能力也会越弱,所以对于较为复杂的 MCU 一般都是采取多时钟源的方法来解决这些问题。
% \) [( N* D6 i* {9 r8 W6 g
8 l' \6 b% {2 q* ?+ e3 N1 V: e# t; U2 F

+ ?; C2 Y/ ~) G+ [: V5 [- E6 _6 K; y而相对应的外设功能所使用的时钟 在stm32f4xx.h 中即可查看到( v3 z; O: y  c1 X
; u. k2 i. ^: Q2 \2 k3 l

* i" s9 i( |4 Z8 S/ G1 fRCC_AHB1  e3 |- O6 e( r" b" W! G$ y; R% H  x% i
28.png / z$ T; k; ^  R6 _3 D; |, R
RCC_APB1
% Q: v9 u9 u* @ 29.png * x' G! D- X- U# q) A4 W% M
3选择要控制的 GPIO 引脚
- `+ h4 U/ Z. B: o* k- U
  1. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;  /*选择Pin9引脚*/
复制代码
可选引脚为0-15 一组IO口有16个引脚
6 V! S  l' y4 J# b& C5 W. M) e4 M4 U7 J 30.png
  i8 A: p9 A+ ?, J, C+ V8 w4设置所选引脚的模式( D" ?: S+ m* |1 N$ {+ S
  1. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;   /*设定为输出模式*/
复制代码
引脚的模式共有四种,分别为输入,输出,复用,和模拟模式3 A. B/ x4 C; l
31.png % _7 p' c9 s# M% V5 z  Q: Q
5 设定所选引脚的输出类型
% S. P# ^, t- T$ M/ F
  1. GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; /*设置引脚的输出类型为推挽输出*/
复制代码
输出模式有两种:推挽输出和开漏输出   
4 M; L* T; ?9 _% e" J/ K& z 32.png
  w# I2 i# o4 ^$ s只有输出模式才需要配置,输入模式下不需要配置
& q! S1 Z: f, ?9 s2 \& y3 o8 B
2 y9 y9 Y& d. d: M5 k( g/ H/ G
* ?9 O5 Z) X# [/ B3 |
6 设定所选管脚的速度6 S' q- G+ [3 t5 i% C3 T
  1. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//设定速度为100MHz  高速模式
复制代码
33.png
* j1 ]( g7 M% o5 W9 @( a1 L7 设定所选管脚的上拉与下拉
) g; e7 S9 {5 p  h
  1. GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; /*设置引脚为上拉模式*/
复制代码
可设置为:上拉,下拉,与浮空
4 u0 b" [/ J. q# r. G. n 34.png 2 u$ }& x0 p3 P/ R& ?1 x
8初始化GPIO
$ _1 A" H1 ]/ {" }
  1. GPIO_Init(GPIOB, &GPIO_InitStructure);    //初始化所设置的引脚
复制代码
GPIO_Init() 是官方配置的初始化函数  第一个参数是GPIOX 第二个参数是结构体所对应GPIO各种参数的配置* z( `% v4 C. F) W9 t$ w: b+ G

# D$ e" ~% U3 YGPIO的初始化(F1)
- i0 n9 i' P4 G1 qF4的初始化相较于F1系列有了很大的改变,在配置F1系列时,结构体只有三个参数  & ^# j5 s; W. e, q; L2 d
6 [8 G3 q9 T4 r
; u6 x' s# w5 {- R: O! y+ k. `: H
GPIO_InitTypeDef 类型的结构体) D/ V% U) ?0 F+ s7 p; F5 _2 W
35.png 4 P, B- _/ `: M2 X/ N
所选管脚的速度8 X" Q3 m+ {) d4 t6 X$ T& P
36.png
$ w1 T% }, g6 l; b. n1 h$ M' b/ [所选管脚的8种模式
( P5 y( k% m6 K) Z' E  C- O 37.png
' P& s6 S( R6 f2 F2 v- m0 s) i区别:) x: d7 c% |1 R% y6 g5 _' d

" q: v- g3 }+ P% |
1 y. [' w. h, T0 Z! L
F1(M-3)系列管脚速度只有三种模式  并且管脚的模式配置八种模式全部都在一起定义,直接设置即可
, T2 T4 M% a2 b* L2 `
- y  L( E- S  x1 o& s
: Q" v9 Q- j; a1 W1 [
总归还是大同小异,不做过多介绍,看下下方配置即可
$ L' s. L# ~9 h5 e( u
  1. void led_init(void). g% `1 j( M; u
  2. {
    # k% J6 I: U  G" k4 g
  3.         GPIO_InitTypeDef GPIO_InitStruct;                    //定义初始化结构体
    , m0 ?- l* e3 g. k
  4.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); //使能GPIOA时钟
    , _7 }. h& V4 ^( N7 K
  5.        
    9 ~7 ]" }0 J4 b/ x
  6.         GPIO_InitStruct.GPIO_Mode    = GPIO_Mode_Out_PP;     //配置模式/ D$ E' \5 J- P) C3 C+ g
  7.         GPIO_InitStruct.GPIO_Pin     = GPIO_Pin_0;           //配置哪个IO口
    9 o/ n9 K( F1 R
  8.         GPIO_InitStruct.GPIO_Speed   = GPIO_Speed_50MHz;     //配置IO口速度,仅输出有效
    8 {$ o6 B# q$ d
  9.         GPIO_Init(GPIOA,&GPIO_InitStruct);                   //初始化GPIOA的参数为以上结构体
    0 T0 ?( {# L" l
  10. }
复制代码
! v* V. k* h) a! R

' |( E) w4 z% z1 ?$ U) D
' l$ G, _9 c# b1 \' S1 o
0 W  ~# }+ z% V/ Q0 s1 T  |2 x
赞 收藏 评论0 发布时间:2021-10-12 14:15

举报

0个回答

所属标签

相似技术帖

官网相关资源

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