二、STM32的输入输出八种模式
目录
1.浮空输入
2.上拉输入
3.下拉输入
4.模拟输入
二.输出模式
1.开漏输出
2.开漏复用输出
3.推挽输出
4.推挽复用输出
一.输入模式
1.浮空输入
2.上拉输入
默认情况下输入引脚数据为1,高电平。
- 上拉电阻:把不确定的信号通过电阻连接到高电平,电信号初始化为高电平。
- 下拉电阻:把不确定的信号通过电阻连接到低电平,电信号初始化为低电平。
- ①:二极管保护电路
- TTL施密特触发器:将模拟信号转化为数字信号
3.下拉输入
默认输入引脚为0,低电平。
4.模拟输入
模拟信号:3.3v 5v 1.9v
数字信号:0 1
二.输出模式
1.开漏输出
- 可以输出0和1(需要外接上拉电阻)
- 适用于电平不匹配场合
- 要得到高电平需要上拉电阻才行
开漏输出:
- 当输入数字信号1时,经过反相器,到达G时是信号0,此时Ug = Us,截止;此时Uout由VDD决定,输出高电平1。
- 当输入数字信号0时,经过反相器,到达G时是信号1,此时Ug > Us,截止;此时Uout输出低电平0。
2.开漏复用输出
GPIO口被用作第二种功能的配置情况
片内外设功能:TX1,MOSI,MISO,SCK,SS
3.推挽输出
可以输出高低电平0和1,适用于双向IO使用。
推挽输出:
- 当输入数字信号1时,经过反相器,到达G时是信号0,此时经过 NMOS Ug = Us,截止;经过 PMOS Ug < Us,导通;此时Uout由VDD决定,输出高电平1。
- 当输入数字信号0时,经过反相器,到达G时是信号1,此时经过 PMOS Ug = Us,截止;经过 NMOS Ug > Us,导通;此时Uout接地,输出低电平0。
4.推挽复用输出
GPIO口被用作第二功能时的配置的情况
片内外设功能IIC的 SCL、SDA.
Lcr1010927912: 我把0x删掉也能得出正确的数,请问0x在这里是什么意思呢?
PMAC中的努力小白: 您文章中的demo没法编译成功呀,大佬
玄湖白虎: 首先你这是一篇面向C#的一篇文章,但主题应该是偏向于c++的,所以我想让你以后取标题,稍微仔细一点,如果你对c++排序算法有点疑虑或不懂的,欢迎咨询
.滄海难为水: 支持博主
希望_睿智: 写得不错