Solo tengo 2 pines (3 estados) disponibles en un microcontrolador y necesito controlar 3 LED rojos, uC se ejecuta en 5V. Solo puedo usar componentes pasivos además.
Solo tengo 2 pines (3 estados) disponibles en un microcontrolador y necesito controlar 3 LED rojos, uC se ejecuta en 5V. Solo puedo usar componentes pasivos además.
Respuestas:
Para controlar cuatro LED:
simular este circuito : esquema creado con CircuitLab
Para encender ambos LED en un pin en particular, alterne el pin a unos cientos de Hz.
Tenga en cuenta que esta configuración requiere que el voltaje directo de los LED sea inferior a Vcc / 2.
Tenga en cuenta también que las resistencias consumen energía todo el tiempo, no solo cuando los LED están encendidos.
Esta solución depende del hecho de que 5V no iluminará los tres LED en serie. Si es necesario, puede agregar un diodo de silicio en serie con uno o más de los LED para aumentar la caída de voltaje directo total.
simular este circuito : esquema creado con CircuitLab
Para tener más de un LED encendido a la vez, tendrá que multiplexar: enciéndalos uno a la vez, lo suficientemente rápido como para que parezcan estar continuamente encendidos.
Con dos pines, puedes controlar cuatro LED. Para controlar dos LED, coloque una resistencia desde el pin MCU para limitar la corriente y átela a dos LED: el cátodo de un LED y el ánodo del otro LED. El extremo del ánodo libre del primer LED se conecta al VCC de la placa MCU a través de otra resistencia. El extremo del cátodo libre del segundo LED se conecta a GND (a través de otra resistencia). Ahora los LED se iluminarán alternativamente cuando el pin MCU esté configurado alto o bajo. Conecte el segundo pin MCU de la misma manera y ahora tiene control sobre un total de cuatro LED.
Para dar la apariencia de un control independiente de cada LED en el par de uno de los pines del puerto requiere un poco de trabajo de software de la siguiente manera.
Si el LED1 es el que tiene el ánodo al pin del puerto y el LED2 es el que tiene el cátodo al pin del puerto, haga lo siguiente para establecer los cuatro estados para dos LED.
LED2 LED1 Action
OFF OFF Set the port pin to tristate level.
OFF ON Set the port pin low.
ON OFF Set the port pin high.
ON ON Toggle the port pin high and low at a frequency over about 120 Hz.
Repita las mismas acciones para el otro pin de puerto y parecerá que tiene cuatro LED independientes en dos pines de puerto.
Este esquema funciona bien para los LED que tienen una caída de tensión directa que supera la mitad del nivel de VCC. Los LED rojos con un 2.1 VF no funcionarán tan bien si el VCC es 5V, por ejemplo. Por otro lado, un LED verde con un VF de 2.5V funcionará muy bien en un sistema con un VCC de 3.3V.
De esta manera, no fluye corriente cuando están apagados, y puede conducir tanto / poco voltaje hacia adelante como necesite
EDN publicó algunas ideas relacionadas para el diseño aquí
Aquí hay uno de ellos:
Para valores típicos con D1 un LED amarillo (2.2V encendido), D2 un LED rojo (1.9V encendido) y voltajes de apagado de 1.2V y 1.1V respectivamente, y corrientes de 8mA cada uno, Vcc = 5.0V, el óptimo los valores son
R1 = 300 ohmios R2 = 330 ohmios R3 = 1.2K ohmios
La corriente de reposo es de 2.7mA. Para que ambos LED aparezcan iluminados, cambie el pin de salida a 100Hz o más.
Utilicé el solucionador de Excel en el artículo original, el código aún puede estar disponible en EDN.
El grado adicional de libertad que ofrece la resistencia R3 puede evitar las limitaciones de los circuitos de Dave Tweed y Michael Karas, aunque para el caso específico de 2 LED rojos que funcionan con un suministro de 5V, el circuito de Dave Tweed es probablemente aceptable, pero verifique el Vf con cuidado, no está bien para algunos LED rojos, y puede ser marginal para otros si el pin del puerto no baja o sube.