单片机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工作模式,以实现对外部设备的精准控制和通信。

相关推荐
Flag- L13 分钟前
STM32标准库-TIM定时器
stm32·单片机·嵌入式硬件
2301_775602381 小时前
STM32什么是寄存器
stm32·单片机·嵌入式硬件
国科安芯3 小时前
抗辐照MCU在卫星载荷电机控制器中的实践探索
网络·嵌入式硬件·硬件工程·智能硬件·空间计算
双古4 小时前
步进电机调试记录(先让我的步进电机转起来)
单片机·嵌入式硬件
lixzest4 小时前
STM32开发中,线程启动异常问题排查简述
stm32·嵌入式硬件
程序员JerrySUN5 小时前
全面理解 Linux 内核性能问题:分类、实战与调优策略
java·linux·运维·服务器·单片机
学习噢学个屁5 小时前
基于STM32语音识别柔光台灯
c语言·stm32·单片机·嵌入式硬件·语音识别
欢乐熊嵌入式编程7 小时前
欢乐熊大话蓝牙知识14:用 STM32 或 EFR32 实现 BLE 通信模块:从0到蓝牙,你也能搞!
stm32·单片机·嵌入式硬件
傍晚冰川7 小时前
FreeRTOS任务调度过程vTaskStartScheduler()&任务设计和划分
开发语言·笔记·stm32·单片机·嵌入式硬件·学习
SY师弟10 小时前
51单片机基础部分——矩阵按键检测
嵌入式硬件·矩阵·51单片机