本文参照这篇博客---易于理解深刻理解GPIO(上拉输入、下拉输入、模拟输入、浮空输入,开漏输出,推挽输出的区别,以STM32为例)_下拉输出-CSDN博客
一、输入模式
- 上拉输入
一句话总结:接上拉电阻对输入的低电平能够有效的读取!上拉的好处就是,默认情况下单片机读取的电平为高电平。(N-MOS管控制)
- 下拉输入
一句话总结:接下拉电阻对输入的高电平能够有效的读取!下拉的好处就是,默认情况下单片机读取的电平为低电平。(P-MOS管控制)
- 模拟输入
一句话总结:就是为了读取外设的模拟输入量,如电压,电流等。简单的说,就是一个AD通道。
- 浮空输入
总结:浮空输入,就是io的状态,默认情况下处在不确定的状态,只有给定电平才能稳定下来。优势:这一种输入模式的电平会完全取决于外部电路而与内部电路无关。有时候会用作对开关按键的读取。
但是在没有外部电路接入的时候,IO脚浮空会使得电平不确定
二、输出模式
- 开漏输出(常用)
- 推挽输出(常用)
- 复用开漏输出
- 复用推挽输出