单片机GPIO模式和应用

Push pull 推挽输出

定义:推挽输出是一种输出模式,其中引脚可以输出高电平或低电平,且两种电平状态下都具有较强的驱动能力。

特点:

无论输出高电平还是低电平,都有较强的电流驱动能力。

适用于驱动外部数字电路,如LED、继电器等。

电平转换速度快,但功耗相对较大。

应用场景:

当需要直接驱动外部负载时,如LED灯的亮灭控制。

在需要高速数据传输的场合,因为推挽输出的电平转换速度快

​​​​​​​open drain 开漏输出

定义:开漏输出模式下,引脚只能输出低电平,不能主动输出高电平,需要外部上拉电阻才能将电平拉高。

特点:

高电平没有驱动能力,需要外部上拉电阻。

低电平驱动能力强,可以直接拉低电平。

可以实现"线与"功能,即多个开漏输出的引脚可以直接相连,只有当所有引脚都输出高电平时,总线才为高电平。

功耗相对较低。

应用场景:

I2C、I3C等总线通信接口,因为它们需要"线与"功能来实现总线仲裁。

需要低功耗的场合。

​​​​​​​Pull -- up 上拉输入

定义:上拉输入模式下,引脚内部通过上拉电阻连接到高电平,当外部没有信号输入时,引脚保持在高电平状态。

特点:

提高了电路的抗干扰能力,防止悬空引脚产生不确定的电平状态。

常用于按钮、开关等输入设备,以确保在无信号输入时引脚保持高电平。

应用场景:

按钮、开关等输入设备的电平检测。

需要确保引脚在无信号输入时保持确定电平的场合。

​​​​​​​​​​​​​​Pull -- down 下拉输入

定义:下拉输入模式下,引脚内部通过下拉电阻连接到低电平,当外部没有信号输入时,引脚保持在低电平状态。

特点:

与上拉输入相反,下拉输入在无信号输入时保持低电平。

较少直接使用,因为大多数单片机默认是高电平有效,但在某些特定应用场景下可能需要下拉输入。

应用场景:

特定应用场景下,需要引脚在无信号输入时保持低电平的场合。

相关推荐
笨笨饿14 小时前
#58_万能函数的构造方法:ReLU函数
数据结构·人工智能·stm32·单片机·硬件工程·学习方法
FreakStudio15 小时前
无硬件学LVGL:基于Web模拟器+MiroPython速通GUI开发—布局与空间管理篇
python·单片机·嵌入式·面向对象·并行计算·电子diy
三品吉他手会点灯18 小时前
STM32F103 学习笔记-21-串口通信(第4节)—串口发送和接收代码讲解(中)
笔记·stm32·单片机·嵌入式硬件·学习
项目題供诗20 小时前
STM32-LED闪烁&LED流水灯&蜂鸣器(四)
stm32·单片机·嵌入式硬件
xiangw@GZ1 天前
EMC原理:四大抗扰度测试原理
单片机·嵌入式硬件
QH139292318801 天前
KEYSIGHT E5071C 端网络分析仪
网络·功能测试·嵌入式硬件·物联网·单元测试·集成测试·模块测试
I_Am_Zou1 天前
STM32实战系列|智能摄像头巡检系统完整演示:第一讲
stm32·单片机·嵌入式硬件
发发就是发1 天前
USB系统架构概述:从一次诡异的枚举失败说起
驱动开发·单片机·嵌入式硬件·算法·fpga开发
发发就是发1 天前
TTY子系统与线路规程:那个让我深夜抓狂的串口“丢包”问题
linux·服务器·驱动开发·单片机·嵌入式硬件
RFCEO1 天前
Rust编程基础课 第1课时:Rust简介与环境搭建 STM32 RUST嵌入式编程实战
stm32·嵌入式硬件·rust·probe-rs·rust工具链·rustup、cargo·stm32 rust适配