推挽输出(Push-Pull)
- 原理:推挽放大器电路中,一只三极管工作在导通、放大状态时,另一只三极管处于截止状态,当输入信号变化到另一个半周后,原先导通、放大的三极管进入截止,而原先截止的三极管进入导通、放大状态,两只三极管在不断地交替导通放大和截止变化,所以称为推挽放大器。
- 简单理解:如上图所示三极管的小箭头就是导通时的电流方向,Vout与V+或V-构成回路,Vin只负责开关。
- 可以吸电流也可以灌电流,相对于开漏,输出电平取决于IC电源。然而,一条总线上只能有一个推挽输出。
- 用途:驱动应用中,驱动LED、蜂鸣器,USART_TX、USART_CK、USART_RTS、MOSI、SPI主模式SCK、CAN_TX等需要较强驱动能力的场合
开漏输出(Open-Drain)
- 开漏输出就是不输出电压,低电平时接地,高电平时不接地。如果外接上拉电阻,则在输出高电平时电压会拉到上拉电阻的电源电压。这种方式适合在连接的外设电压比单片机电压低的时候。
- 具备输出低电平能力,无外接电路则无输出高电平能力即悬空
- 典型的集电极开路电路如图所示。电路中右侧的三极管集电极什么都不接,所以叫做集电极开路,左侧的三极管用于反相作用,即左侧输入“0”时左侧三极管截止,VCC通过电阻加到右侧三极管基极,右侧三极管导通,右侧输出端连接到地,输出“0”。
- 用途:电平转换,加上拉电阻做驱动器,实现”线与“逻辑(I2C等接口总线应用中),利用外电路提高驱动能力,利用上拉电阻提供高电平,没有上拉电阻只能输出低电平。
简单对比
推挽输出 | 开漏输出 | |
---|---|---|
高电平驱动能力 | 强 | 由外部上拉电阻提供 |
低电平驱动能力 | 强 | 强 |
电平跳变速度 | 快 | 由外部上拉电阻决定,电阻越小,反应越快,功耗越大 |
线与功能 | 不支持 | 支持 |
电平转换 | 不支持 | 支持 |
PS: 参考链接结合里面的内容做了些个人理解,麻烦的话看图吧(ˉ▽ ̄~)~秒懂