单片机GPIO的八种工作模式

GPIO(General Purpose Input/Output,通用输入/输出)在微控制器(MCU)和微处理器(MPU)等嵌入式系统中扮演着至关重要的角色,它允许用户灵活地控制外部设备的输入和输出,GPIO的工作模式决定了其在不同场景下的行为和应用。

一、输入模式

1.上拉输入

特点:在无外部输入信号时,通过内部上拉电阻将GPIO端口保持在高电平状态。

应用:常用于需要确保输入信号稳定为高电平的场景,如防止信号漂移或外部设备未连接时导致的信号不确定。外部只有靠谱的低电平,需要配置成上拉输入;

2.下拉输入

特点:在无外部输入信号时,通过内部下拉电阻将GPIO端口保持在低电平状态。

应用:外部只有靠谱的高电平,需要配置成下拉输入;与上拉输入相反,下拉输入用于需要确保输入信号稳定为低电平的场景。

3.浮空输入

特点:GPIO端口的电平状态完全由外部输入决定,无内部上拉或下拉电阻。如果引脚悬空,读取的电平状态将不确定。

应用:常用于需要读取外部设备真实电平状态的场景,如按键检测等。当外部检测电路,有稳定的高电平和低电平,就选择浮空输入;

4.模拟输入

特点:输入信号不经施密特触发器处理,直接作为模拟量接入。

应用:连接模拟传感器,如温度、光照等传感器,以采集和处理模拟信号。ADC(检测外部电压)、DAC检测时候,需要配置成模拟输入。

二、输出模式

1.推挽输出

特点:可以输出高、低电平,推挽结构由两个互补控制的三极管组成,导通损耗小、效率高,既可以向负载灌电流,也可以从负载抽取电流。

应用:连接数字器件,如LED、继电器等,以控制其开关状态。

2.开漏输出

特点:输出端相当于三极管的集电极,只能输出低电平或高阻态,要得到高电平状态需要外部上拉电阻。适合电流型驱动,吸收电流能力强。

应用:连接不同电平的器件,如IIC总线通信,实现电平匹配和灵活的输出方式。

3.复用功能模式

3.1复用推挽输出

特点:GPIO端口受内部外设控制,如定时器的PWM输出、SPI的MOSI和MISO等。

应用:在需要利用GPIO端口实现特定外设功能时,如PWM信号输出、SPI通信等。

3.2复用开漏输出

特点:与复用推挽输出类似,但输出模式为开漏输出,需要外部上拉电阻。

应用:在需要复用GPIO端口实现特定外设功能,并且要求输出模式为开漏输出的场景。

GPIO的工作模式丰富多样,涵盖了输入、输出和复用功能等多个方面。在实际应用中,需要根据具体的需求和场景来选择合适的GPIO工作模式,以实现对外部设备的精准控制和通信。

相关推荐
YTao_G3 小时前
STM32模块:022 PWR电源控制
stm32·单片机·嵌入式硬件
丁满与彭彭4 小时前
嵌入式学习笔记-MCU阶段-DAY01
笔记·单片机·学习
海海不掉头发5 小时前
【计算机组成原理】-CPU章节学习篇—笔记随笔
笔记·单片机·学习·考研·计算机组成原理
趣多多代言人5 小时前
从零开始手写嵌入式实时操作系统
开发语言·arm开发·单片机·嵌入式硬件·面试·职场和发展·嵌入式
h137286978696 小时前
Type-C PD快充协议智能芯片S312L详解
嵌入式硬件
不想学习\??!8 小时前
STM32-外部中断
stm32·单片机·嵌入式硬件
不想学习\??!8 小时前
STM32-定时器
stm32·单片机·嵌入式硬件
LIN-JUN-WEI9 小时前
[ESP32]VSCODE+ESP-IDF环境搭建及blink例程尝试(win10 win11均配置成功)
c语言·开发语言·ide·vscode·单片机·学习·编辑器
LS_learner10 小时前
嵌入式系统中实现串口重定向
嵌入式硬件
景彡先生10 小时前
STM32中SPI协议详解
stm32·单片机·嵌入式硬件