一、三极管中NPN和PNP的区别
二、推挽电路
对于三极管而言,中间的基极相当于控制端。它是一个电流控制型元器件,意思就是说,只要基极B有输入(或输出)电流就可以对这个晶体管进行控制了。
下图为NPN型三极管:
那PNP型三极管正好相反,当有电流从控制端(基极)流出时,就会有电流从输入端流到输出端。
那么推挽电路:
经过上面的N型三极管提供电流给负载(Rload),这就叫「推」。
经过上面的P型三极管提供电流给负载(Rload),这就叫「挽」。
将三极管替换为场效应管:
场效应管是电压控制型元器件,只要对栅极施加电压,DS就会导通。
三、开漏电路
漏极那一端开路,直接作为输出端口。
开漏指的是场效应管的“漏极”,开漏输出就是把场效应管的漏极直接引出来作为输出引脚。
开漏输出最重要的作用是:电平匹配,在设计电路时不论是单片机还是外设芯片或是负载,每个个体的逻辑电平可能是不一样的,这种情况时就需要作电平的匹配,就用到了开漏输出模式。
开漏输出模式,因为场效应管的漏极直接引出,是需要加一个外置电源的,我们可以通过外接电源的方式得到想要的电平。因为外接电源的方式,从MCU的角度来说,减轻了MCU的负担。
例如在使用MCU自带的IIC模块时,就要求配置想要的管脚为开漏输出模式, 多个开漏输出被接在了同一个线上,下图中如果其中的某个引脚的漏极为低电平,则整个总线上都是低电平,这是“与逻辑”,所以被成为“线与”。因为IIC总线可以接很多个设备,MCU就是通过这种方式判断当前总线的状态。
开漏的线与特性:当多个开漏输出链接到一起,当它们全部都输出高电平时,总线上才是高电平,但凡有一个开漏输出引脚上是低电平,总线就会被拉低。
仍然用三极管举例,开漏电路带一个负载LED,外接一个上拉电阻。
当Vin没有电流,Q5断开时,LED亮。
当Vin流入电流,Q5导通时,LED灭。
四、复用输出模式
复用模式输出连接的是MCU的内部外设,例如PWM、USART、IIC。具体用复用开漏输出还是复用推挽输出,这个就要根据外设需求来设置,例如IIC在使用时需要用到线与特性,就必须在程序里配置IO引脚为复用开漏输出;像UART或者PWM功能,需要IO口高速变化确定的高低电平,则必须配置为复用推挽输出。