STM32 开发 - GPIO 引入(GPIO 概述、STM32 中的 GPIO、GPIO 的特点、GPIO 翻转、GPIO 中断、GPIO的 8 种工作模式)

一、GPIO 概述

  • GPIO(General Purpose Input/Output,通用输入 / 输出)是嵌入式系统中用于与外部设备进行数字信号交互的通用接口

二、STM32 中的 GPIO

  1. 每个引脚的电平是 0V ~ 3.3V,部分引脚最高可以兼容到 5V

  2. 标准型号(例如,STM32F103 系列)通常有 7 组 GPIO(GPIOA ~ GPIOG),每组 16 个引脚,最多支持 112 个 GPIO


三、GPIO 的特点

  1. 不同的型号,IO 口数量可能不一样

  2. 快速翻转,每次翻转最快只需要两个时钟周期

  3. 每个 IO 口都可以做中断

  4. 支持 8 种工作模式


四、GPIO 翻转

  • GPIO 翻转是指将 GPIO 引脚的电平状态从当前值改变为相反值的过程
  1. 如果当前是高电平(1,GPIO_PIN_SET),翻转后变为低电平(0,GPIO_PIN_RESET

  2. 如果当前是低电平(0,GPIO_PIN_RESET),翻转后变为高电平(1,GPIO_PIN_SET


五、GPIO 中断

  • GPIO 中断是指当 GPIO 引脚的电平状态发生特定变化时,处理器暂停当前执行的程序,转去执行预先设定的中断服务程序,处理完后再返回原程序继续执行的过程
# 举例说明

1. 就像正在写作业时,手机突然响了(中断发生了)

2. 暂停作业去接电话(执行中断程序)

3. 接完继续写作业(返回原程序)

六、GPIO的 8 种工作模式

工作模式说明
开漏输出仅能输出低电平,高电平需外接上拉电阻
推挽输出可输出高低电平
复用开漏输出开漏输出结合外设功能
复用推挽输出推挽输出结合外设功能
浮空输入引脚无内部上拉 / 下拉电阻,电平完全由外部电路决定
上拉输入内部上拉电阻默认拉高引脚,无外部输入时为高电平
下拉输入内部下拉电阻默认拉低引脚,无外部输入时为低电平
模拟输入禁用数字功能,直接连接 ADC 采集模拟信号
  1. 输出模式下可以控制端口输出高电平低电平,用于驱动 LED,蜂鸣器等,如果是大功率器件(例如,电机),还需要加上驱动器(小电流控制大电流)

  2. 输入模式下可以读取端口的高低电平,用于读取外接按键,外接模拟信号的输入,ADC 电压采集,模拟通信协议接受数据等

  3. 复用功能是指 GPIO 引脚被配置为芯片外设的信号接口,相当于引脚借给外设使用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值