推荐给好友 上一篇 | 下一篇

微控制器用一只管脚的低静态电流驱动两只LED

  本设计实例的基础是一个包括三只电阻和一个微控制器 I/O 脚的电路,它作为高阻输入,或单独驱动两只 LED 的输出(参考文献 1)。这对本设计似乎是个不错的方法,主要原因是微控制器缺少空闲的 I/O 脚,以及为了简化实现。不幸的是,它不能用于电池供电的设计,因为即使在两只 LED 均关断情况下,设计的泄漏电流也在 2 mA 量级。本设计实例对电路作了修改,只用一个 I/O 脚驱动两只 LED,而电流较低(图 1)。虽然电路使用了数只二极管和一只电阻,但价格和元件数均不高。

图1在这些简单电路中LED导通大约需要1


  两种电路的工作基础都是二极管的非线性特性,即二极管电流随施加在其上的电压成指数变化。为说明其原理,设想将微控制器管脚配置为一个输入,使管脚处于高阻态。在第一种电路中,假定 LED 需要约1.5V才能导通,而小信号二极管的压降约为 0.6V(图 1a)。因此,为使两只 LED 导通,理论上需要 4.2V 电压。实际上,LED 在大约 4V、80mA 电流时就开始微亮,而在4.4V、1mA 电流时全亮。在3.3V时,泄漏电流只有2.41mA。此电路的标称电压可以略低于3.3V,但在这种情况下,应采用肖特基二极管。

  第二种电路用于高于5V的电源(图1b)。以图中的取值,LED在7V、74-mA电流时开始微亮,而在8.5V、1mA 时达到全亮,5V电源下关断时的电流为1.53mA。要点亮LED,必须将微控制器的I/O脚配置为一个输出;输出值1点亮下方LED,输出值 0 点亮上方LED。如果要同时点亮两只LED,程序必须使端口在1与0之间循环,循环频率要大于50Hz。为了计算出两种情况下的电阻值,使用公式R=(3.3V-VD-VLED)/ILED(图1a)和 R=(VCC-VZ-VLED)/ILED(图1b),其中ILED是点亮 LED 所需电流,VD是ILED电流流经二极管时其上的电压,VZ 是齐纳二极管电压,而 VLED 是 ILED 流经 LED 时的正向压降。I/O 脚应使用施密特触发器或模拟输入,以避免电流过高。

参考文献
1. Pefhany, Spehro, “Circuit Controls Two LEDs With One Microcontroller Port Pin,” Electronic Design, April 1, 2002.



TAG: LED 微控制器
 

评分:0

我来说两句

seccode