|
单片机引脚配置方式6 _: H: C: _1 X0 ?1 |1 |+ T5 A Q 方式一:直接写寄存器来配置的话,那么,看上手册,给“配置寄存器”对应的位写0或者1就可以达到目的。8 x0 U8 K% [& D4 u' I
- n& A+ U% V1 d% \# [ 方式二:调用库函数进行配置,对结构体了解 " _2 L$ j' g, J! \1 o, N6 l: s5 c
+ |/ o$ X: A6 g; _: `3 L 选择好GPIO_Mode之后,就要使用GPIO_Init()函数来配置,你可以打开这个配置函数,实际上也是在对“配置寄存器”进行写操作。0 k1 a4 f9 Y2 V# u1 J# v" x
某个引脚功能配置方式:( w! V7 k; w' M# O7 F: } 1、作为普通GPIO输入/ N% z; }9 M9 }/ @6 W 根据需要配置该引脚为浮空输入、带弱上拉输入或带弱下拉输入,同时不要使能该引脚对应的所有复用功能模块。% G; C+ p/ Z+ f) [, `9 {& s6 d6 ^ 8 F5 X. v( E( [- \& f 在引脚上没有外界干扰的情况下,上拉就是把引脚设置为高电平了,你用万用表量上拉引脚,就是高电平;下拉就是把引脚设置为低电平了,你用万用表量下拉引脚,就是低电平,也就是0V。 f! ]2 N, A0 }$ f2 z 2、作为普通GPIO输出* s/ s0 S, c1 S, p6 `3 Q 根据需要配置该引脚为推挽输出或开漏输出,同时不要使能该引脚对应的所有复用功能模块。$ X4 x+ i7 E! w( m 9 b5 t$ T& t+ Q" c U 设置为推挽,就是提高了引脚的输出电流能力。设置为开漏,就是提高了引脚的输入电流能力。然后还要知道,设置为开漏时,如果外部不加上拉电阻,默认输出是低电平。( Q, E* Q( c7 E5 M ; k. b% t- t! }4 d8 z 3、作为普通模拟输入, o+ R |+ z3 m2 F7 T- \ 配置该引脚为模拟输入模式,同时不要使能该引脚对应的所有复用功能模块。& p. e0 a5 O! X( y+ x1 u 4、作为内置外设的输入0 ^) _% p9 m9 x2 N0 ^ 根据需要配置该引脚为浮空输入、带弱上拉输入或带弱下拉输入,同时使能该引脚对应的某个复用功能模块。9 `1 r2 ?$ s1 g! o 5 T0 r1 G1 r7 G" Q7 i8 s 复用就是该引脚可以作为SPI引脚I2C引脚等其他功能的引脚。 5、作为内置外设的输出9 i; H* Q. ~0 o* n 根据需要配置该引脚为复用推挽输出或复用开漏输出,同时使能该引脚对应的所有复用功能模块 ————————————————7 c$ }- [( y- f. d# J( W 版权声明:simon_fighting6 U% r9 w1 C6 ~+ z; s' A. d 2 e; s1 k$ j; Y3 j3 E5 a |
【经验分享】STM32语音识别的智能蓝牙音箱(源程序+原理图+PCB+设计说明书+PPT)
想找个ST芯片
[GPIO] 使用新型抽象开始C++嵌入式编程,从GPIO开始
技术手册stm32f1xx中的一个小问题
【经验分享】STM32 HAL库移植FreeModbus详细步骤
【逢7发帖赢大礼】STM32开发之IC门禁卡UID读取方法!
实战经验 | Keil工程使用NEAI库的异常问题
经验分享 | FDCAN数据段波特率增加后发送失败的问题分析
STM32几种流行开发环境的优缺点
好用软件推荐-TouchGFX Designer
微信公众号
手机版