现在的单片机IO口灌电流都是在100mA左右,其实你可以直接接;
如果没有速度要求的话,用最简单8050 NPN三极管就可以了,三极管的接法是IO口串联一个基极电阻Rb后接到8050的基极;8050集电极串联一个限流电阻Rc后接到发光二极管;8050的发射极直接接地。
电阻Rb计算公式为:
a*(Vdd-Vth)/Rb=I;
其中a为三极管电流放大倍数,你可以去50左右;
Vdd为IO口的高电平电压,Vth为三极管的阈值电压,一般为0.7V;
I为三极管集电极电流,也就是你要驱动的器件工作电流,为40mA;
Rb为三极管基极电阻;
Rc的计算公式为:
(Vdd-Vth2)/Rc=I
Vdd为电源电压,Vth2为发光二极管阈值电压,一般为1V左右;
I为发光二极管工作电流
如果是共阴极驱动,采用PNP型三极管,基极接一电阻(1K)到单片机的I/O口,集电极接地,发射极接LED,就可以了。
加个ULN2003