找回密码
 注册
关于网站域名变更的通知
查看: 78|回复: 0
打印 上一主题 下一主题

STM32 GPIO有几种模式

[复制链接]
  • TA的每日心情
    开心
    2023-5-15 15:25
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
     楼主| 发表于 2024-10-24 17:49 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x

    # d. u# n6 v7 g& j9 R* n( z* z4 u4 ~- t1 o' ~4 i% m1 \+ ?

    / j9 q' C" A, k1、上拉输入:上拉就是把电位拉高,比如拉到Vcc。上拉就是将不确定的信号通过一个电阻嵌位在高电平!电阻同时起限流作用!弱强只是上拉电阻的阻值不同,没有什么严格区分。, [) T# X/ E1 a3 z: ~) O
      h+ c$ F! H1 W8 g2 {

    4 \4 [) x) w$ N$ \
    & Q9 ~5 F: `" M4 f# Q, i# G2、下拉输入:就是把电压拉低,拉到GND。与上拉原理相似。6 c7 G. y  }/ g. m

    * O. i9 K. n& m. X' d- L, i* y7 X* u7 G( ~) X

    ' n& V' M  ^* f" z% j3、浮空输入:浮空(floating)就是逻辑器件的输入引脚即不接高电平,也不接低电平。由于逻辑器件的内部结构,当它输入引脚悬空时,相当于该引脚接了高电平。一般实际运用时,引脚不建议悬空,易受干扰。 通俗讲就是让管脚什么都不接,浮空着。
    / B3 p0 U& t  d+ m4 R
    6 T$ e6 A, [0 `+ e2 |8 i: x
    * S2 m  \  C1 [4 t( p+ w- G$ w& t
    4、模拟输入:模拟输入是指传统方式的输入.数字输入是输入PCM数字信号,即0,1的二进制数字信号,通过数模转换,转换成模拟信号,经前级放大进入功率放大器,功率放大器还是模拟的。, K3 ]0 e& s7 v8 v
    4 {" }! h* J+ _2 q& j9 _
    & O* _$ F5 S& }! p, }

    5 E1 d: t8 K, `) `! I3 R5、推挽输出:可以输出高,低电平,连接数字器件; 推挽结构一般是指两个三极管分别受两互补信号的控制,总是在一个三极管导通的时候另一个截止。高低电平由IC的电源低定。. B! E" d2 B  N0 c
    # D& D) i8 S' E

    ( F5 c# R+ e4 |& r4 N" H
    6 c8 }- j9 z& s! g8 B1 f6、开漏输出:输出端相当于三极管的集电极. 要得到高电平状态需要上拉电阻才行. 适合于做电流型的驱动,其吸收电流的能力相对强(一般20mA以内).
    + B& D5 P7 N# h2 D, p) I% F7 h" ^. J8 L) Q8 c
      V8 }/ y* i$ {& i) I& Y

    1 i  ?4 o9 z( L0 L; {8 h  x7、复用输出:可以理解为GPIO口被用作第二功能时的配置情况(即并非作为通用IO口使用)。端口必须配置成复用功能输出模式(推挽或开漏)。4 P/ O: l; d+ S8 v' ~% @
    - G$ h1 _- w; z; O* u$ S

    0 k+ a5 M7 `  i. V1 @
    # W7 D3 B! H  j4 C6 v: v# f7 A
    ( H4 E: w, ?# S1 I/ n! q8 G在STM32中选用IO模式,下面是参考网上的总结一下。. g; d6 U( u; }& s" Q

    9 o. s3 N  l1 _. C
    ! H0 ]- p0 a! Y9 E. a7 p# t" \! A' I( ?0 U) u
    (1)GPIO_Mode_AIN 模拟输入---应用ADC模拟输入,或者低功耗下省电1 i1 k4 W+ t4 O, z6 H
    7 P7 ^$ Q0 D' ^$ P- I
    7 m% f+ e$ C! Z3 W
    # e- n2 x& }3 X/ L: E  X
    (2)GPIO_Mode_IN_FLOATING 浮空输入---可以做KEY识别
    , ?% R. \  t6 c' y* R+ i6 H9 f0 }- T8 W/ ?/ L+ ]
      h' X# s5 S) G! `. U

    - W. n8 L. o0 |5 \# b) o  d( u) o8 D(3)GPIO_Mode_IPD 下拉输入--- IO内部下拉电阻输入1 a4 B( ]. U) C& f0 ]' I4 {
    0 _  Z% }' P% H. b
    8 a( q9 G3 n, z
    % m# b5 Z% o8 P4 S+ _8 o2 u. @
    (4)GPIO_Mode_IPU 上拉输入---IO内部上拉电阻输入' M& x% ~4 H# v8 E9 W" L- h

    ( N) [: {+ b. Y; X6 e/ C, u, N
    9 `+ Q* C: Z- U9 a; P* X7 _4 z) c: S
    (5)GPIO_Mode_Out_OD 开漏输出---IO输出0接GND,IO输出1,悬空,需要外接上拉电阻,才能实现输出高电平。当输出为1时,IO口的状态由上拉电阻拉高电平,但由于是开漏输出模式,这样IO口也就可以由外部电路改变为低电平或不变。可以读IO输入电平变化,实现C51的IO双向功能
    $ v0 x# C6 v0 u& `* T7 \
      _, E: u3 r7 @' `$ s(6)GPIO_Mode_Out_PP 推挽输出---IO输出0-接GND, IO输出1 -接VCC,读输入值是未知的
    7 X' h0 S; r! W1 k6 u7 H$ I" q; ]: n. G
    (7)GPIO_Mode_AF_OD 复用开漏输出---片内外设功能(TX1,MOSI,MISO.SCK.SS)# f* ]! F( v1 ?& X3 N8 V

    9 r# H- z$ s( X(8)GPIO_Mode_AF_PP 复用推挽输出---片内外设功能(I2C的SCL,SDA)
    8 H/ |& o$ ~* C/ Y. Z
    ) t  k5 _6 C8 x
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-7-18 17:40 , Processed in 0.125000 second(s), 27 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表