从硬件方面理解GPIO的开漏输出和推挽输出

article/2025/9/22 12:03:09

最近在学STM32,看正点原子视频中对开漏输出和推挽输出的讲解视频时,发现原子哥对电路的讲解有一些错误,主要说关于MOS管的开关问题,查了一晚上资料,终于想明白了,特意发个文章分享一下。
这是STM32F4XX中文参考手册中GPIO口的结构图。输出部分的电路是在下方。

先简单介绍一下MOS管吧。MOS管其实是和三极管差不多的,有三个极:栅极(G),源极(S)和漏极(D)。三极管通过放大基极的电流变化来控制集电极的电流输出,而MOS管通过栅极和漏极的电压控制电流。MOS管是通过场效应实现这种控制的,实际没有电流通过,因此不会被烧坏,而且输入阻抗也比较大。

MOS管可以分为PMOS管和NMOS管。简单来说,当用作开关电路时,对于PMOS管,当Ug < Us并且电压差达到阈值的时候,PMOS管就是导通的,对于NMOS管,当Ug > Us并且电压差达到阈值的时候,NMOS管就是导通的

该电路图中,PMOS管源极接Vdd,应此当珊极给低电平时,Ug < Us,PMOS管导通,漏极与源极与Vdd接通,输出高电平,当栅极给高电平时,PMOS管关闭。NMOS管源极接地,应此当栅极给高电平时,Ug > Us,NMOS管导通,漏极与源极与Vss接通,输出低电平;当栅极给低电平时,NMOS管关闭。

需要注意的是这个输出控制器,内部电路也没有给,如果输入是1,输出不一定是1的,原子哥就是这里讲错了,导致后面的PMOS管,NMOS管的导通条件都对不上。

开漏输出时,PMOS管是开路的状态,也就是说只用到NMOS管。如果寄存器给到输入0,通过输出控制器,输出到NMOS管的栅极为1,此时NMOS管导通,IO口输出为0;如果寄存器给到输入1,通过输出控制器,输出到NMOS管的栅极为0,此时NMOS管关闭,IO口的输出取决于接上拉电阻还是下拉电阻。开漏输出以MOS管的漏极为输出,所以叫开漏输出。

推挽输出时,PMOS管和NMOS管都会用到。如果寄存器给到输入0,通过输出控制器,输出到PMOS管的栅极为1,输出到NMOS管的栅极为1,此时PMOS管关闭,NMOS管导通,IO口输出为0;如果寄存器给到输入1,通过输出控制器,输出到PMOS管的栅极为0,输出到NMOS管为0,此时PMOS管导通,NMOS管关闭,IO口输出为1。

关于推挽输出,个人是这样理解的(看看就行,大概率是不对的…)可以看到,两个MOS管只有一个是导通的,另一个则是高阻抗的关闭状态。当PMOS管导通,NMOS管关闭的时候是这样的:相当于"推"
在这里插入图片描述
当NMOS管导通,PMOS管关闭的时候,则是这样的,相当于“挽”:
在这里插入图片描述
这里插一个眼,是我看到一个博主通过三极管来解释推挽和开漏的,至于MOS管嘛…我这个小白也不是很懂。

https://blog.csdn.net/lostand/article/details/70052918

可以看到推挽输出的时候,寄存器设为0就输出0,寄存器设为1就输出1,很适合做数字的输入输出,一般我用推挽输出用的也比较多开漏输出寄存器设为0是输出0,寄存器设为1的话,输出不一定是1,还要取决于外面接了上拉电阻还是下拉电阻,相当于是一般只能输出低电平吧。开漏输出没怎么用过,不过据说驱动能力比较强,可能是因为高电平时通过外部的上拉电阻实现的,拉电流可能相对内部驱动的电流会大一点?

总结一下就是这个表:

输出类型寄存器输入PMOS管栅极输入NMOS管栅极输入PMOS管状态NMOS管状态最终输出
开漏输出0开路1未使用导通0
开漏输出1开路0未使用高阻抗1
推挽输出011高阻抗导通0
推挽输出100导通高阻抗1

翘了fb课来写的这篇博文,码字不易,转载请注明出处!


http://chatgpt.dhexx.cn/article/Nd8VTSI6.shtml

相关文章

推挽输出与开漏输出

推挽输出 要理解推挽输出&#xff0c;首先要理解好三极管&#xff08;晶体管&#xff09;的原理。下面这种三极管有三个端口&#xff0c;分别是基极&#xff08;Base&#xff09;、集电极&#xff08;Collector&#xff09;和发射极&#xff08;Emitter&#xff09;。下图是NP…

开漏输出与推挽输出

一、开漏输出&#xff1a;集电极开路门(OC)与漏极开路门(OD)一般用于线与和电流驱动的场合&#xff0c;为开集(漏)输出结构。 1. 利用外部电路的驱动能力&#xff0c;减少IC内部的驱动。 2. 可以将多个开漏输出引脚连接在一起&#xff0c;通过一个上拉电阻上拉到VCC&#xff…

开漏输出和推挽输出总结(一看就懂)

推挽输出&#xff08;Push-Pull Output&#xff09; 推挽输出结构是由两个MOS或者三极管收到互补控制的信号控制&#xff0c;两个管子时钟一个在导通&#xff0c;一个在截止&#xff0c;如图1所示&#xff1a; 推挽输出的最大特点是可以真正能真正的输出高电平和低电平&…

开漏输出、推挽输出的区别

前言 background&#xff1a;测试相关设备引脚输出&#xff0c;使用示波器时发现部分引脚需外接上拉电阻至高电平才能在示波器观察到高阻态&#xff0c;为了深究其中原理&#xff0c;查阅了相关资料&#xff0c;发现知乎中有一篇对这两种输出描述得清晰易懂的文章&#xff0c;此…

开漏输出和推挽输出

开漏输出和推挽输出 概述模拟文件下载推挽输出线与开漏输出输出电压最后 概述 在STM32或者GD32中&#xff0c;普通的输出GPIO输出方式主要是开漏输出和推挽输出&#xff0c;下面我们开始讲解这2种模式的区别。需要样片的可以加群申请&#xff1a;615061293。 下图是GPIO内部的…

如何正确理解开漏输出和推挽输出

作者&#xff1a;知乎用户 链接&#xff1a;https://www.zhihu.com/question/28512432/answer/41217074 来源&#xff1a;知乎 著作权归作者所有。商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处。 我觉得下面这个「网上资料」还是很不错的。 单片机I/O口推挽输出…

推挽输出和开漏输出的区别

一、推挽输出 推挽输出结构是由两个MOS或者三极管收到互补控制的信号控制&#xff0c;两个管子时钟一个在导通&#xff0c;一个在截止&#xff0c;如下图所示 当VIN为高电平、上面的MOS导通&#xff0c;下面的MOS截止&#xff0c;Vout被上拉到VDD 当VIN为低电平、上面的MOS截止…

推挽输出开漏输出

在学习STM32的时候&#xff0c;我发现了一个很值得研究学习的问题&#xff0c;下面&#xff0c;用我的理解来阐述一遍&#xff0c;这其中的原理。 首先请看电路图 在给GPIO配置输出的时候&#xff0c;其有两种工作模式可选&#xff0c;分别是推挽输出和开漏输出。 在此之前先得…

开漏输出与推挽

1.推挽输出:可以输出高,低电平,连接数字器件。 输出 0 时&#xff0c;N-MOS 导通&#xff0c;P-MOS 高阻&#xff0c;输出0。 输出 1 时&#xff0c;N-MOS 高阻&#xff0c;P-MOS 导通&#xff0c;输出1&#xff08;不需要外部上拉电路&#xff09;。 开漏输出:输出端相当…

基础——STM32F4的GPIO模式

stm32的GPIO的配置模式包括&#xff1a; 1. 模拟输入&#xff1b; 2. 浮空输入&#xff1b; 3. 上拉输入&#xff1b; 4. 下拉输入&#xff1b; 5. 开漏输出&#xff1b; 6. 推挽输出&#xff1b; 7. 复用开漏输出&#xff1b; 8. 复用推挽输出 1.模拟输入 从上图我们可以看到&…

GPIO输入输出各种模式(推挽、开漏、准双向端口)详解

技术交流是便宜的博客地址:http://blog.csdn.net/techexchangeischeap 概述 能将处理器的GPIO(General Purpose Input and Output)内部结构和各种模式彻底弄清楚的人并不多,最近在百度上搜索了大量关于这部分的资料,对于其中很多问题的说法并不统一。本文尽可能的将IO涉…

卡尔曼滤波器(哔哩哔哩徐亦达)

1、尖帽子,表示是估计量而不是真实量。 2、从下面公式可以大概得出高斯噪声的方差和d级别差不多。 TDOA文献中的公式 3、卡尔曼滤波器主要记住五个公式&#xff1a; 4、卡尔曼滤波器的应用&#xff1a;包括机器人导航&#xff0c;控制&#xff0c;传感器数据融合甚至在军事方…

李航/徐亦达 统计学习方法第九章EM算法及其推广总结和习题答案

强烈推荐徐亦达老师关于EM算法的讲解视频&#xff0c;本文根据徐老师和李航老师统计学习方法整理&#xff0c;由于公式推导太多&#xff0c;笔记为手写。其中包含混合高斯模型的理解&#xff0c;形象化解释&#xff0c;以及习题链接。 习题 习题9.1和9.3 习题9.4

徐亦达老师-机器学习教学视频共76集(下载自优酷)

链接&#xff1a;http://pan.baidu.com/s/1bpNzqSB 密码&#xff1a;naqe 徐老师主页&#xff1a;http://www-staff.it.uts.edu.au/~ydxu/ 转载于:https://www.cnblogs.com/zhangliustc/p/5998836.html

刷新校史!985副研究员,以独立作者身份,研究成果被数学顶级期刊录用!

来源&#xff1a;华中科技大学&青塔等&#xff0c;信息仅作分享之用 据华中科技大学数学中心10月8日消息&#xff0c;郇真副研究员的文章“Representations of Lie 2-groups and 2-Vector Bundles”被顶刊Acta Mathematica接收。 据悉&#xff0c;郇真副研究员是新中国成立…

机器学习笔记之狄利克雷过程(二)基于标量参数作用的推导过程

机器学习笔记之狄利克雷过程——基于标量参数作用的推导过程 引言回顾&#xff1a;狄利克雷过程——基本介绍狄利克雷过程——定义小插曲&#xff1a;狄利克雷分布的简单性质 关于标量参数作用的推导过程 引言 上一节以高斯混合模型为引&#xff0c;简单介绍了狄利克雷过程( D…

首发:徐亦达团队新论文推荐(ECCV2020):端到端多人多视角3d动态匹配网络

徐亦达团队在ECCV2020上发表了一篇机器学习论文 End-to-end Dynamic Matching Network for Multi-view Multi-person 3d Pose Estimation&#xff08;端到端多人多视角3d动态匹配网络&#xff09; 论文第一作者&#xff1a;黄聪臻韬&#xff0c;本科就读于中国科学技术大学-计算…

独作论文登数学顶刊,浙大女神校友再被提起:32岁在贵州深山投稿,一家出两位院士...

明敏 詹士 发自 凹非寺量子位 | 公众号 QbitAI 最近&#xff0c;华科副研究员以独作身份投中数学顶刊的消息&#xff0c;震惊国内数学圈。 毕竟Acta Mathematica号称是世界上最难投中的数学期刊之一&#xff0c;能拿下此成就的动辄都是院士级人物…… 不过&#xff0c;纵览中国…

【华人学者风采】陈积明 浙江大学

【华人学者风采】陈积明&#xff0c;浙江大学控制科学与工程学院教授&#xff0c;博士生导师。研究领域包括网络优化与控制&#xff0c;数据智能与工业互联网&#xff0c;控制系统安全等。2000和2005年在浙江大学分别获学士和博士学位。2008-2010在加拿大滑铁卢大学访问。历任浙…