失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > open drain push pull 上拉电阻理解

open drain push pull 上拉电阻理解

时间:2020-03-04 15:25:40

相关推荐

open drain  push pull  上拉电阻理解

转载/u012604283/article/details/84647237

因为自己之前一直不理解推挽输出、漏极开路输出、集电极开路输出这三个概念到底是什么意思。今天终于静下心来好好学习了一遍,于是便写下本文详细解释一下这三个概念,希望能对你有所帮助,文中大部分内容均为引用。

要理解推挽输出,首先要理解好三极管(晶体管)的原理。下面这种三极管有三个端口,分别是基极(Base)、集电极(Collector)和发射极(Emitter)。下图是NPN型晶体管。

这种三极管是电流控制型元器件,注意关键词电流控制。意思就是说,只要基极B有输入(或输出)电流就可以对这个晶体管进行控制了。

下面请允许我换一下概念,把基极B视为控制端,集电极C视为输入端,发射极E视为输出端。这里输入输出是指电流流动的方向。

当控制端有电流输入的时候,就会有电流从输入端进入并从输出端流出。

而PNP管正好相反,当有电流从控制端流出时,就会有电流从输入端流到输出端。

1. push-pull

那么推挽电路:

上面的三极管是N型三极管,下面的三极管是P型三极管,请留意控制端、输入端和输出端。

当Vin电压为V+时,上面的N型三极管控制端有电流输入,Q3导通,于是电流从上往下通过,提供电流给负载。

经过上面的N型三极管提供电流给负载(Rload),这就叫「推」。

当Vin电压为V-时,下面的三极管有电流流出,Q4导通,有电流从上往下流过。

经过下面的P型三极管提供电流给负载(Rload),这就叫「挽」。

以上,这就是推挽(push-pull)电路。

2. open drain/ open collector

那么什么是开集电极输出呢?有了前面的基础,这里就可以简单的介绍一下。

如图,开集的意思,就是集电极C一端什么都不接,直接作为输出端口。

如果要用这种电路带一个负载,比如一个LED,必须接一个上拉电阻,就像这样。

当Vin没有电流,Q5断开时,LED亮。 当Vin流入电流,Q5导通时,LED灭。

开漏电路,就是把上图中的三极管换成 场效应管(MOSFET)。

N型场效应管各个端口的名称:

场效应管 是电压控制型元器件,只要对栅极施加电压,DS就会导通。结型场效应管有一个特性就是它的输入阻抗非常大,这意味着:没有电流从控制电路流出,也没有电流进入控制电路。没有电流流入或流出,就不会烧坏控制电路。而双极型晶体管不同,是电流控制性元器件,如果使用开集电路,可能会烧坏控制电路。这大概就是我们总是听到开漏电路(open drain)而很少听到开集电路的原因吧?因为开集电路被淘汰了。

在学习了这些概念后,我们再从应用的角度说一下吧,理解了这些应用背后原因,就肯定真正理解了这两者。

1.推挽输出能够输出高或者低,而开漏输出只能输出低,或者关闭输出,因此开漏输出总是要配一个上拉电阻使用。

2. 开漏输出的上拉电阻不能太小,太小的话,当开漏输出的下管导通时,电源到地的电压在电阻上会造成很大的功耗,因此这个电阻阻值通常在10k以上,这样开漏输出在从输出低电平切换到高电平时,速度是很慢的。

3. 推挽输出任意时刻的输出要么是高,要么是低,所以不能将多个输出短接,而开漏输出可以将多个输出短接,共用一个上拉,此时这些开漏输出的驱动其实是与非的关系。

4. 推挽输出输出高时,其电压等于推挽电路的电源,通常为一个定值,而开漏输出的高取决于上拉电阻接的电压,不取决于前级电压,所以经常用来做电平转换,用低电压逻辑驱动高电压逻辑,比如3.3v带5v。

转载:/mxgsgtc/article/details/52565670

GPIO口的定义:

GPIO口,通用输入输出,这个大家都知道,但是输入,输出的电路是什么样的,其实并不用太关心,只需配置寄存器即可,但是还是要摸一摸,为了方便理解,引入了单片机的IO口原理图来说明(道理是一样的)

认识电路:

一.普通IO口

如上图所示(红色框是板子内部)

1.基级(②位置)为低电平时,PNP导通,此时单片机IO口输出的是低电平,当基级(②位置)为高电平时,PNP导通,此时单片机IO口输出的是高电平

2.这里注意,④位置上是一个上拉电阻,这里设置上拉电阻的考虑因素是这样的,假设我要在这个单片机IO口输出一个电流来驱动小灯发亮,①的位置电阻一般有20k左右,发出的电流250uA,基本上忽略不计,加上一个上拉电阻后, 总电流 = ①位置电流 + ④位置电流(①与④构成并联电路)

3.为什么不设置让,①的位置电阻R小一点,这样电流大一点,就不需要上拉电阻了呢? 因为单片机是控制单元,设计时最好把强电流设计到外围电路里,如果设计到单片机内部,会烧坏板子

这里体现出上拉电阻的其中一个作用--->加大电流,加强了驱动的能力

二.强推挽输出:

(意思就是说能输入输出大电流,前面已经说了单片机内部最好不要设计大的电流,所以这个功能的IO要少用)

1.内部总线输入高电平, 上面的NPN导通,则IO口输出大电流(因为上面的三极管VCC电源下面没有接上拉电阻,I = VCC/电阻+NPN内部电阻),所以IO出口的地方一般接一个电阻限流内部总线输如低电平, 下面的NPN导通,则此时如果IO口外面接一个VCC(不带上拉电阻),就会有大电流灌输进来

这里体现了上拉电阻的另一个作用--->限流

三.开漏级OC门:

什么叫IO口的开漏状态,如上图所示 如果内线是高电平,则NPN的基级是低电平,此时NPN不导通,那么IO口此时相当于是悬浮在空气中的,所以无法确定它的状态(不知道是低电平还是高电平),那么这个状态就是开漏状态,所以此时要向外围电路输出一个高电平是不可能的,如果想输出一个高电平,则必须在NPN的集电极上面来一个上拉电阻

这时又体现出上拉的一个作用: 就是将不确定的信号通过一个电阻嵌位(保持)在一个高电平上,下拉同理

这里对于OC门还有一个应用, 可以控制高电位的电路,如果外围电路需要大的电压,则可以用OC门加上拉电阻来完成这个功能,如下图所示, 当内部总线为高电平,则NPN截止,最右边加一个12v的上拉电阻,使得电位钳在12v供外围电路使用

如果觉得《open drain push pull 上拉电阻理解》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。