
2026年9月30日今天学习了部分GPIO的知识八种工作模式以及其对应的工作原理对于GPIO的学习当然绕不开三极管和mos管的学习其实之前我是学习过模电基础的但是时间有点长了已经忘记得差不多了所以今天温习了一下。但是好像在今天的GPIO学习中并没有看到三极管的运用。好了步入正题我所选用的开发板为STM32U575如果下方所列的工作模式与您有出入请参考您自己的datasheetGPIO的八种工作模式推挽输出开漏输出复用推挽输出复用开漏输出悬空输入上拉输入下拉输入模拟输入我分别总结了它们的特点下面按顺序说明1.推挽输出其核心在于对NMOS管和PMOS管的综合应用同时刻只能有一个mos管导通从而影响对于io引脚的输出当output control(对输入的信号逻辑取反)为低电平PMOS导通VCC与IO引脚相接IO成为高电平当output control为高电平NMOS导通IO与VSS相接IO接地为低电平2.开漏输出与推挽输出不同点在于只有一个NMOS管当output control为高电平NMOS导通IO与VSS相接IO接地为低电平虽然有上拉电阻的存在但GND的力量显然是要比VDD的力量强大所以为低电平这里还有一个独属于开漏输出的功能为线与功能即在IO口连接多个NMOS管时只有全部结果都为1IO才为1有一个导通IO都为0并且会影响其他的NMOS液为03.复用开漏输出和复用推挽输出与上述相同只是在于信号来源的不同4.浮空输入为最常用的一种输入方式结果直接取决于IO引脚注意点在于当无IO信号时即悬空状态浮空输入电平不确定优点是输入阻抗高MCU采集的状态是单纯外部信号缺点是前方所提到的悬空状态浮空输入电平不确定5.上拉/下拉输入结果直接取决于IO引脚注意点在于当无IO信号时其结果分别为1和0我们常用上拉电阻应用场景为当输入信号较弱时易受干扰不稳定这时用上拉输入来确保输入的稳定状态6.模拟输入在上方的浮空输入和上拉/下拉输入中我们都使用到TTL施密特触发器将模拟信号转化为数字信号来发送数据接着数据输入寄存器来获取数据但在模拟输入中信号不经过施密特触发器直接将模拟信号发送给MCU中的ADC来转换这些就是我今日所学习到的有关GPIO的知识如有错误请指正谢谢。明日还有部分GPIO知识我会明日更新