GPIO端的8种工作

一.GPIO的简介

1.GPIO(General Purpose Input Output)通用输入输出口,简单来说就是软件可控制的引脚,STM32芯片的GPIO引脚与外部设备连接起来,从而实现与外部通讯、控制以及数据采集的功能

2.可配置为8种输入输出模式

3.引脚电平:0V~3.3V,部分引脚可容忍5V

4.输出模式下可控制端口输出高低电平,用以驱动LED、控制蜂鸣器、模拟通信协议输出时序等

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

二.GPIO的结构

APB=Advanced Peripheral Bus,译作高级外设总线。APB主要用于低宽带的周边外设之间的连接。APB又可分为APB1和APB2,APB1总线上连接了一些低速外设和模块,如串口、I2C、SPI等。APB2总线上连接了一些高速外设和模块,如定时器、串行接口、USB等。如下图(系统接口图)。

三. GPIO位结构

保护二极管

芯片的引脚电平0~3.3V,部分引脚可以5V,引脚的两个保护二极管可以防止引脚外部过高或过低的电压输入

1.当引脚电压高于VDD时,上方的二极管导通

防止过高电压进入芯片内部烧坏芯片

2.当引脚电压低于VSS时,下方的二极管导通

施密特触发器

又叫肖特基触发器,具有滤波的作用,让通过的电平输出稳定的高低电平

四.GPIO模式

1.浮空输入

浮空输入模式下,I/O端口的电平信号直接进入输入数据寄存器。此时,I/O的电平状态是不确定的,一会高一会低,也就是我们所说的浮空,电平状态完全由外部输入决定。

2.上拉输入

 上拉输入模式下,上拉电阻开关闭合,下拉电阻开关断开。在没有信号输入的时候,输入端的电平保持在高电平;当输入一个高电平时,此时仍然是高电平;当输入一个低电平的时候,输入端的电平变成低电平。

3.下拉输入模式

 下拉输入模式下,下拉电阻开关闭合,上拉电阻开关断开。在没有信号输入的时候,输入端的电平保持在低电平;当输入一个低电平时,此时仍然是高电平;当输入一个高电平的时候,输入端的电平变成高电平。

4.模拟输入模式

模拟输入模式下,I/O端口的模拟信号(电压信号)直接模拟输入到片上外设模块,比如ADC模块等。

5.开漏输出

  •  上方的P-MOS管完全不工作;
  • 输出为0,低电平,则P-MOS管关闭,N-MOS管导通,使输出接地;
  • 只能输出低电平,不能输出高电平。如果要输出高电平,则需要外接上拉;
  • 开漏输出模式一般应用在I2C、SMBUS通信等需要线与(一个为低,全部为低)功能的总线电路中。

6.推挽输出 

  • 若向结构中输入高电平,经过反向后,上方的P-MOS导通,下方的N-MOS,对外输出高电平;
  • 若向该结构中输入低电平,经过反向后,下方的N-MOS管导通,上方的P-MOS关闭,对外输出低电平;
  • 当引脚高低电平切换时,两个MOS管轮流导通,P管负责灌电流,N管负责拉电流,使其负载能力和开关速度都比普通的方式有很大的提高。
  • 推挽输出的低电平为0V,高电平为3.3V。 

7.复用开漏和复用推挽

 复用开漏和复用推挽模式类似,只是输出的高低电平的来源不同,不是让CPU直接写输出数据寄存器,而是利用片上外设模块的复用功能输出来决定。

五.总结

本章主要介绍了GPIO的定义和GPIO不同模式间的区别与实现方式,希望看完本章能对你有所提高噢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值