GPIO的几种模式——以STM32为例

GPIO 八种状态 ,一般是指 STM32F1系列(如STM32F103)GPIO配置寄存器中的8种工作模式。

一、GPIO模式及其分类

1、输出

**(1)浮空输入。**可读取引脚电平,若引脚悬空,则电平不确定。

**(2)上拉输入。**可读取引脚电平,内部连接上拉电阻,悬空时默认高电平。

**(3)下拉输入。**可读取引脚电平,内部连接下拉电阻,悬空时默认低电平。

**(4)模拟输入。**GPIO无效,引脚直接接入内部ADC。

2、输入

**(1)开漏输出。**可输出引脚电平,高电平为高阻态,低电平接VSS。

**(2)推挽输出。**可输出引脚电平,高电平接VDD,低电平接VSS。

**(3)复用开漏输出。**由片上外设控制,高电平为高阻态,低电平接VSS。

**(4)复用推挽输出。**由片上外设控制,高电平接VDD,低电平接VSS。

二、GPIO结构以及模式详解

先看GPIO内部框图:

1、输入模式

(1)浮空输入(Floating Input)

既不上拉,也不下拉。高阻态,完全由外部决定电平。主要应用:UART RX,外部数字信号输入。缺点:悬空时,电平不确定,随机跳变。

内部结构

(2)上拉输入(Pull-Up)

引脚默认高电平,外部接地变低电平。主要应用:按键输入,I2C。

内部结构

(3)下拉输入(Pull-Down)

引脚默认低电平,外部拉高变高电平。主要应用:状态检测。

内部结构

(4)模拟输入(Analog)

内部关闭施密特触发器和数字输入缓冲器,直接进入ADC。主要应用:ADC采样、电压检测、电流采样。

内部结构

2、输出模式

(5)推挽输出(Push-Pull)

既能输出高,也能输出低。主要应用:LED、继电器、普通数字输出。

内部结构

(6)开漏输出(Open Drain)

输出0导通,输出1,引脚悬空。主要应用:I2C、多机通讯。

内部结构

(7)复用推挽输出(AF Push-Pull)

GPIO控制权交给外设。如:TIM/SPI/USART。通过TIM输出PWM信号是最经典的应用.

(8)复用开漏输出(AF Open Drain)

GPIO控制权交给外设。主要是:I2C的SDA和SCL。

三、8种模式总结表

四、电机控制中的实际应用

相关推荐
硅基手札1 天前
【串口技术系列文档 10】低功耗与唤醒机制
驱动开发·stm32·单片机·嵌入式硬件·mcu·计算机外设
逐光者9331 天前
STM32——SPI 屏 · Flash · 高速
java·前端·stm32
yuehuaxin011 天前
上海贝岭 BL6523GX(D78) 单相计量芯片开发笔记:引脚定义、寄存器配置与校表流程
嵌入式硬件·智能家居·适配器模式·智能硬件
Kuakewei8881 天前
可调OVP/OCP USB限流保护芯片IC的50μs过流响应测试
嵌入式硬件
HRTOS1 天前
HRTOS 官网内容调整记录:首页、系统架构与文档页面优化
单片机·系统架构·51单片机
雨田言炎1 天前
STM32之SysTick--系统定时器(内容简单但重要,附件有程序源码)
stm32·单片机·嵌入式硬件
ccbw161 天前
CH32M007K8U7:集成48V三相预驱的RISC-V电机MCU
单片机·嵌入式硬件
编程圈子1 天前
I.MX6U 裸机开发 24. 电容触摸屏与 I2C 驱动
单片机·嵌入式硬件
Zwawa1 天前
传感器模块都在交出什么:从模拟电压到数字协议
c语言·单片机·嵌入式
FakeOccupational1 天前
【电路笔记 STM32】Cortex-M7 UART 中断模式(串口接收中断+串口空闲中断)
笔记·stm32·单片机