资料介绍
Open_drain_vs_Push_pull
Open-Drain V.S. Push-Pull
【Open-Drain与Push-Pull】
GPIO的功能,简单说就是可以根据自己的需要去配置为输入或输出。(General
Purpose 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