本期,边肖将为您带来STM32 GPIO的原理、特点、选型和配置。文章内容丰富,将从专业角度进行分析和描述。希望你看完这篇文章能有所收获。
1基本结构
STM32 GPIO是通用输入输出端口的英文缩写,可以实现输入、输出、驱动、通讯等功能。STM32的I/O端口有8种模式(4种输入模式和4种输出模式),每个I/O端口位支持3种最大翻转速度(2MHz、10MHz和50MHz),可以自由编程,但I/O端口寄存器必须设置为32位。
上拉输入
下拉输入
模拟输入
开漏输出
推挽输出
多路推挽输出
多路复用功能开漏输出
以STM32L011为例(其他STM32处理器类似),GPIO的基本结构如下:
关键器件分析:1。保护二极管:
为防止从I/O引脚外部输入过高和过低的电压,当引脚电压高于vddo 2时,上二极管导通;
当引脚电压低于VSS时,下二极管导通,防止芯片因电压异常而烧毁。2、开关:
开关是一个TTL肖特基触发器,它把模拟信号转换成0和1的数字信号。然而,当GPIO用作模数转换器采集电压通道时,信号不会通过触发器进行TTL电平转换。3、P-MOS、N-MOS:
该电路使GPIO具有“推挽输出”和“开漏输出”的功能。24种输入模式
STM32有四种输入模式:浮动输入、上拉输入、下拉输入和模拟输入。在浮动输入模式下,I/O端口的电平信号由外部输入决定,电平状态不确定,最终直接进入输入数据寄存器。
浮动输入通常用于配置USART的RX引脚,如下图所示:
在上拉输入模式下,当I/O端口挂起(无信号输入)时,电平状态保持高电平;当输入电平低时,电平状态为低电平,最后直接进入输入数据寄存器,如下图所示:
在下拉输入模式下,当I/O端口挂起(无信号输入)时,电平状态保持在低电平,当输入电平为高电平时,电平状态为高电平,最后直接进入输入数据寄存器,如下图所示:
在模拟模式下,I/O端口的模拟信号(电压信号代替电平信号)直接模拟输入片上外设模块,如ADC模块。
输入通常应该
用于ADC模拟输入,或者低功耗下省电等情景,如下图所示:
4种输出模式
开漏输出只可以输出强低电平,高电平得靠外部电阻拉高,输出端相当于三极管的集电极,适合于做电流型的驱动,其吸收电流的能力相对强(一般20ma以内),如下图所示:
当设置输出的电平状态为低电平时,N-MOS管处于开启状态,此时I/O端口的电平就是低电平。
推挽输出可以输出强高、低电平,连接数字器件,如下图所示:
高电平;
当设置输出的电平状态为低电平时,P-MOS管处于关闭状态,N-MOS管处于开启状态,此时I/O端口的电平就由N-MOS管决定:
低电平。
复用功能开漏输出通常用于TX1、MOSI、MISO等引脚的配置,复用功能推挽输出通常用于I2C的SCL、SDA。
以复用功能推挽输出模式为例,实现原理如下图所示:
请参考下图所示。
上述就是小编为大家分享的STM32 GPIO的原理、特性、选型和配置是什么了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/133181.html