Open-Drain与Push-Pull
经期能吃药吗>文笔好的高质量的小说GPIO的功能,简单说就是可以根据⾃⼰的需要去配置为输⼊或输出。(General Purpo Input Output,简称为GPIO或总线扩展器,利⽤⼯业标准I2C、SMBus?或SPI?接⼝简化了I/O⼝的扩展。当微控制器或芯⽚组没有⾜够的I/O端⼝,或当系统需要采⽤远端串⾏通信或控制时,GPIO产品能够提供额外的控制和监视功能。)但是在配置GPIO管脚的时候,常会见到两种模式:开漏(open-drain,漏极开路)和推挽(push-pull)。对此两种模式,有何区别和联系,下⾯整理了⼀些资料,来详细解释⼀下:
【Push-Pull推挽输出】
原理:
输出的器件是指输出脚内部集成有⼀对互补的MOSFET,当Q1导通、Q2截⽌时输出⾼电平;⽽当Q1截⽌导通、Q2导通时输出低电平。Push-Pull输出,实际上内部是⽤了两个晶体管(transistor),此处分别称为Top-Transistor和Bottom-Transistor。通过开关对应的晶体管,输出对应的电平。Top-Transistor打开(Bottom-Transistor关闭),输出为⾼电平;Bottom-Transistor打开(Top-Transistor关闭),输出低电
联系人图标平。Push-pull即能够漏电流(sink current),⼜可以集电流(source current)。其也许有,也许没有另外⼀个状态:⾼阻抗(high impedance)状态。除⾮Push-pull需要⽀持额外的⾼阻抗状态,否则不需要额外的上拉电阻。
夺眶而出
特点:在CMOS电路⾥⾯应该叫CMOS输出更合适,因为在CMOS⾥⾯的push-pull输出能⼒不可能做得双极那么⼤。输出能⼒看IC内部输出极N管P管的⾯积。push-pull是现在CMOS电路⾥⾯⽤得最多的输出级设计⽅式。
学高为师身正为范
优点:(1)可以吸电流,也可以贯电流;(2)和开漏输出相⽐,push-pull的⾼低电平由IC的电源低定,不能简单的做逻辑操作等。
缺点:⼀条总线上只能有⼀个push-pull输出的器件;
花龟怎么养【Open-Drain开漏输出】
原理:
开漏电路就是指以MOSFET的漏极为输出的电路。指内部输出和地之间有个N沟道的MOSFET(Q1),这些器件可以⽤于电平转换的应⽤。输出电压由Vcc决定。Vcc可以⼤于输⼊⾼电平电压VCC (call UP-Translate)也可以低于输⼊⾼电平电压VCC(call Down-Translate) Open-Drain输出,则是⽐push-pull少了个top transistor,只有那个bottom transistor。(就像push-pull中的那样)当bottom transistor关闭,则输出为⾼电平。此处没法输出⾼电平,想要输出⾼电平,必须外部再接⼀个上拉电阻(pull-up resistor)。Open-drain只能够漏电流(sink current),如果想要集电流(source current),则需要加⼀个上拉电阻。
优点:狗身上的寄生虫
(1)对于各种电压节点间的电平转换⾮常有⽤,可以⽤于各种电压节点的Up-translate和Down-translate转换
(2)可以将多个开漏输出的Pin脚,连接到⼀条线上,形成“与逻辑”关系,即“线与”功能,任意⼀个变低后,开漏线上的逻辑就为0了。这也是I2C,SMBus等总线判断总线占⽤状态的原理。
(3)利⽤外部电路的驱动能⼒,减少IC内部的驱动。当IC内部MOSFET导通时,驱动电流是从外部的VCC流经R pull-up ,MOSFET到GND。IC内部仅需很⼩的栅极驱动电流。
述职述廉述法(4)可以利⽤改变上拉电源的电压,改变传输电平,如图, IC的逻辑电平由电源Vcc1决定,⽽输出⾼电平则由Vcc2决定。这样我们就可以⽤低电平逻辑控制输出⾼电平逻辑了。
OD输出电平的原理
缺点:开漏Pin不连接外部的上拉电阻,则只能输出低电平。当输出电平为低时,N沟道三极管是导通的,这样在Vcc'和GND之间有⼀个持续的电流流过上拉电阻R和三极管Q1。这会影响整个系统的功耗。采⽤较⼤值的上拉电阻可以减⼩电流。但是,但是⼤的阻值会使输出信号的上升时间变慢。即上拉电阻R pull-up的阻值决定了逻辑电平转换的沿的速度。阻值越⼤,速度越低功耗越⼩。反之亦然。