要驱动继电器等大功率设备,必须使用MOS管、达林顿管之类。这里推荐使用集成8路达林顿管的芯片:ULN2003A/ULN2803A(反向驱动)、UDN2981A(正向驱动)
其中ULN2003A为比较老的芯片,有7路驱动,而ULN2803有8路驱动,原理都是使用灌电流的方式驱动:
左边的TTL驱动在MCU内部都有,故IO口可直接与驱动芯片相连接。输出采用反向的驱动方式,9脚为防止反向电动势的引脚,直接与驱动电源相连。
下面是UDN2803A的典型电路:
可以看出来,都是正向输出的,而第9脚是驱动的电源输入,10脚是接地,用于防止方向电动势的。
ULN2803跟ULN2003的使用方法是一样的,他们都是集电极开路输出,只能接收灌入电流。
区别就是2803可以驱动8位管脚,2003只有7个管脚。
COM脚的作用是当你使用ULN2803(2003)来驱动继电器时,可以将COM脚接到继电器的VCC端,利用ULN2803(2003)内部的反向二极管作保护继电器,消除继电器闭合时产生的感应电压。
它的内部结构也是达林顿的,专门用来驱动继电器的芯片,甚至在芯片内部做了一个消线圈反电动势的二极管。ULN2003的输出端允许通过IC 电流200mA,饱和压降VCE 约1V左右,耐压BVCEO 约为36V。用户输出口的外接负载可根据以上参数估算。采用集电极开路输出,输出电流大,故可以直接驱动继电器或固体继电器(SSR)等外接控制器件,也可直接驱动低压灯泡。