stm32固件库中GPIO的工作模式

固件库中GPIO的工作模式
stm32固件库中GPIO的工作模式_第1张图片
总结一下可分为三种工作模式
输入模式、输出模式、复用模式


1、输入模式
1.1上拉输入:默认电平上拉
1.2下拉输入:默认电平下拉
1.3浮空输入:电平不确定完全由外部输入决定,多用于按键开关
1.4模拟输入:用于ADC采集(模数转换Analog-to-digital conversion)
在输入模式的时候,输出模式是被禁止的


2、输出模式
2.1推挽模式:双mos管轮流工作通过GPIOx_ODR可控制I/O输出高低电平
2.2开漏输出:只有N-MOS管工作PMOS管保持关闭,GPIOx_ODR可控制I/O输出高电平(N-MOS导通)和高阻态(N-MOS不导通);一般只用于IIC ,SMBUS通信
2.3输出速度可配置,有 2MHz\10MHz\50MHz 的选项。此处的输出速度即 I/O 支持的高低电平状态最高切换频率,支持的频率越高,功耗越大,如果功耗要求,不严格,把速度设置成最大即可。

NOTE:在输出模式时施密特触发器是打开的,即输入可用,通过输入数据寄存器 GPIOx_IDR 可读取 I/O 的实际状态。


3、复用功能模式
在复用模式下,输出使能,输出速度可设置,可以工作在推挽模式,开漏模式。但是输出信号来源于外部,输出数据寄存器无效。输入模式可用,通过输入寄存器可以获得I/O的状态。

参考野火的开源图书 零死角玩转 STM32

你可能感兴趣的:(stm32)