Cómo conducir un LED de 20 mA desde un pin GPIO de 4 mA como máximo


16

Tengo un IC que tiene un GPIO con el que me gustaría conducir un LED.

Dado que el dispositivo se estará quedando sin batería, mantener el consumo de energía bajo (tal vez cero) mientras el LED está apagado como prioridad.

El GPIO suministra 3.3V cuando está encendido y 0.0V votos cuando está apagado.

También tiene un límite de un máximo de 4 mA.

El LED tiene una corriente directa de 20 mA y un voltaje directo deseado de 2.0V.

Cuando el LED está encendido, lo más probable es que parpadee (usando PWM) en el rango bajo de kilohercios.

Después de hurgar, creo que este puede ser el tipo de circuito que necesito.

ingrese la descripción de la imagen aquí

Pregunta 1: ¿Estoy cerca de estar en el camino correcto?

Pregunta 2: ¿Cuál es el componente correcto para usar para el elemento (5), (Transistor o Mosfet), y cómo hago para encontrar uno (en el local Frys, RadioShack, Online) y cómo se identifican (especifican)?

Pregunta 3: ¿La elección del elemento (5) tendrá algún efecto en el valor de ohmios del elemento de resistencia (3)? Además de la ley normal de Ohms para la fuente de alimentación de 3.0V y el LED de 2.0V.

Pregunta 4: ¿Cuál sería el valor de ohmios del elemento de resistencia (2), si se requiere alguno?

Respuestas:


29

El circuito que muestra debe funcionar, pero es innecesariamente complicado y costoso. Aquí hay algo más simple y más barato:

Casi cualquier transistor NPN pequeño que pueda encontrar funcionará en este rol. Si la caída BE del transistor es de 700 mV, el LED cae 2.0 V, entonces habrá 600 mV a través de R1 cuando el LED esté encendido. En este ejemplo, eso permitirá que fluyan 17 mA a través del LED. Aumente la resistencia si puede tolerar una luz más baja del LED y desea ahorrar algo de energía.

Otra ventaja de este circuito es que el colector del transistor se puede conectar a algo más alto que 3.3 V. Esto no cambiará la corriente a través del LED, solo la caída de voltaje en el transistor y, por lo tanto, cuánto se disipa. Esto puede ser útil si los 3.3 V provienen de un pequeño regulador y la corriente del LED agregaría una carga significativa. En ese caso, conecte el colector a la tensión no regulada. El transistor en efecto se convierte en el regulador solo para el LED, y la corriente del LED provendrá del suministro no regulado y no usará el presupuesto de corriente limitado del regulador de 3.3 V.

Adicional:

Veo que hay cierta confusión sobre cómo funciona este circuito y por qué no hay una resistencia base.

El transistor se está utilizando en la configuración del seguidor del emisor para proporcionar ganancia de corriente, no ganancia de voltaje. El voltaje de la salida digital es suficiente para controlar el LED, pero no puede generar suficiente corriente. Es por eso que la ganancia de corriente es útil pero la ganancia de voltaje no es necesaria.

Veamos este circuito suponiendo que la caída de BE sea de 700 mV fijos, el voltaje de saturación CE sea de 200 mV y la ganancia sea 20. Esos son valores razonables, excepto que la ganancia es baja. Estoy usando una ganancia baja deliberadamente por ahora porque veremos más adelante que solo se necesita una ganancia mínima del transistor. Este circuito funciona bien siempre que la ganancia sea desde ese valor mínimo hasta la inifinidad. Así que analizaremos con una ganancia irrealmente baja de 20 para un transistor de señal pequeño. Si todo funciona bien con eso, estamos bien con cualquier transistor de señal realmente pequeño que encuentre. El 2N4401 que mostré puede contar con una ganancia de aproximadamente 50 en este caso, por ejemplo.

Lo primero a tener en cuenta es que el transistor no puede saturarse en este circuito. Dado que la base es conducida a un máximo de 3.3 V, el emisor nunca supera los 2.6 V debido a la caída BE de 700 mV. Eso significa que siempre hay un mínimo de 700 mV entre CE, que está muy por encima del nivel de saturación de 200 mV.

Como el transistor siempre está en su región "lineal", sabemos que la corriente del colector es la corriente base multiplicada por la ganancia. La corriente del emisor es la suma de estas dos corrientes. La relación entre el emisor y la corriente base es, por lo tanto, ganancia + 1, o 21 en nuestro ejemplo.

Para calcular las diversas corrientes, es más fácil comenzar con el emisor y usar las relaciones anteriores para obtener las otras corrientes. Cuando la salida digital es de 3.3 V, el emisor es de 700 mV menos, o de 2.6 V. Se sabe que el LED deja caer 2.0 V, por lo que deja 600 mV a través de R1. De la ley de Ohms: 600mV / 36Ω = 16.7mA. Eso encenderá bien el LED pero dejará un pequeño margen para no exceder su máximo de 20 mA. Como la corriente del emisor es 16.7 mA, la corriente base debe ser 16.7 mA / 21 = 790 µA, y la corriente del colector 16.7 mA - 790 µA = 15.9 mA. La salida digital puede generar hasta 4 mA, por lo que estamos dentro de las especificaciones y ni siquiera la cargamos significativamente.

El efecto neto es que el voltaje base controla el voltaje del emisor, pero el trabajo pesado para proporcionar la corriente del emisor lo realiza el transistor, no la salida digital. La proporción de la cantidad de corriente del LED (la corriente del emisor) proviene del colector en comparación con la base es la ganancia del transistor. En el ejemplo anterior, esa ganancia fue 20. Por cada 21 partes de corriente a través del LED, 1 parte proviene de la salida digital y 20 partes del suministro de 3,3 V a través del colector del transistor.

¿Qué pasaría si la ganancia fuera mayor? Incluso menos de la corriente general del LED provendría de la base. Con una ganancia de 20, 20/21 = 95.2% proviene del recolector. Con una ganancia de 50 es 50/51 = 98.0%. Con ganancia infinita es del 100%. Es por eso que este circuito es realmente muy tolerante a la variación de partes. No importa si el 95% o el 99.9% de la corriente del LED proviene del suministro de 3.3 V a través del colector. La carga en la salida digital cambiará, pero en todos los casos estará muy por debajo de su máximo, así que eso no importa. El voltaje del emisor es el mismo en todos los casos, por lo que el LED verá la misma corriente si el transistor tiene una ganancia de 20, 50, 200 o más.

Otra ventaja sutil de este circuito que mencioné antes es que el colector no necesita estar conectado a la fuente de 3.3 V. ¿Cómo cambian las cosas si el colector estuviera atado a 5 V, por ejemplo? Nada desde el LED o el punto de vista de la salida digital. Recuerde que el voltaje del emisor es una función del voltaje base. El voltaje del colector no importa siempre que sea lo suficientemente alto como para mantener el transistor fuera de la saturación, que 3.3 V ya era. La única diferencia será la caída de CE a través del transistor. Esto aumentará la disipación de potencia del transistor, que en la mayoría de los casos será el factor limitante en el voltaje máximo del colector. Digamos que el transistor puede disipar 150 mW de forma segura. Con la corriente del colector de 16.7 mA podemos calcular el voltaje del colector al emisor para causar una disipación de 150 mW:

Esto significa que en este ejemplo podemos vincular el colector a cualquier suministro útil de 3.3V a 11.6 V. Ni siquiera necesita ser regulado. Podría fluctuar activamente en cualquier lugar dentro de ese rango y la corriente del LED se mantendría estable. Esto puede ser útil, por ejemplo, si los 3.3 V son hechos por un regulador con poca capacidad de corriente y la mayor parte de eso ya está asignada. Si se ejecuta desde un suministro de aproximadamente 5 V, por ejemplo, este circuito puede obtener la mayor parte de la corriente del LED de ese suministro de 5 V mientras mantiene la corriente del LED bien regulada . Y, este circuito es muy tolerante con las variaciones de la parte del transistor. Mientras el transistor tenga una ganancia mínima, que está muy por debajo de lo que proporcionan la mayoría de los transistores de señal pequeños, el circuito funcionará bien.

Una de las lecciones aquí es pensar cómo funciona realmente un circuito. No hay lugar en la ingeniería para las reacciones instintivas o las supersticiones, como poner siempre una resistencia en serie con la base. Coloque uno allí cuando sea necesario, pero tenga en cuenta que no siempre es así, como muestra este circuito.


Falta el transistor, su resistencia limitante de corriente en su base.
Passerby

3
@Passerby - No, no lo es. Esta es una topología inteligente que no la necesita.
Connor Wolf

1
@ AndrewKohlsmith: esto también debería ser bastante inmune a las variaciones del proceso en el transistor. Mientras el transistor tenga suficiente beta, cualquier dispositivo funcionará prácticamente.
Connor Wolf

2
Wow buena respuesta, cambió la forma en que veo el diseño del circuito.
Abdullah Kahraman

1
No se sorprende en absoluto de ser visualmente movido por un ejemplo bien razonado y articulado y ver el nombre de "Olin Lathrop" como el contribuyente. Sí, me doy cuenta de que esto es> 5.5 años después de la respuesta real. Así de buena es la respuesta. +1
jayce

3

Muchos LED de hoy son muy brillantes y funcionan bien desde 4 mA o incluso menos, y le ahorrará los componentes externos adicionales. ¡Los LED que uso habitualmente funcionan perfectamente bien (para mi aplicación) a 1 mA!

Simplemente coloque una resistencia en serie con el LED, lo suficientemente grande como para limitar la corriente. Verifique si no excede la corriente máxima para todo el dispositivo, se especifica en la hoja de datos.

Así que verifique si su LED es lo suficientemente brillante conectado directamente desde el pin GPIO con una resistencia en serie:

R=UreropagyoLmire =3,3-2,0V4 4mamá=1,2V4 4mamá=300Ω

Ω


Acabo de probar un LED rojo de 10 mm y un LED blanco de 5 mm, con una corriente de accionamiento de 2 mA, y ambos son muy visibles. A 4 mA, ambos son bastante brillantes. El LED de 10 mm tiene una capacidad de 30 mA, mientras que el LED blanco tiene una capacidad de 25 mA.
Anindo Ghosh

0

Sé que su pregunta se refería a componentes discretos, pero creo que en el caso general probablemente sea mejor mirar un buffer o controlador de línea basado en IC. Por ejemplo, el ULN2803 es un búfer octal (8 E / S) y extraerá menos de 2 mA de sus pines GPIO, pero puede manejar hasta 500 mA por salida. (Está invirtiendo la lógica, por lo que su código debe tener en cuenta eso). Obviamente, querrá usar resistencias limitantes de corriente para sus LED.


0

Comentando el esquema propuesto en la publicación original:

Usar un transistor NMOS FET discreto como este sería un buen interruptor.

  • No se necesita resistencia en serie para la puerta de un MOSFET.
  • Seleccione un FET con un voltaje de umbral de aproximadamente 1 V por debajo de su voltaje de suministro para asegurarse de que estará bien saturado cuando se enciende, y luego la caída de voltaje en el MOSFET será baja. (Los MOSFETs hacen muy buenos cambios).
  • La corriente del LED se establecerá mediante ILED = (VCC - Vf - Vds) / R. Para los números mostrados, y suponiendo 0.2V a través del FET, R = (3.3 - 2.0 - 0.2) / 20mA = 51 o 56ohms (valor estándar más cercano)

Nota: Normalmente, el ánodo del LED está conectado al suministro y la resistencia está en serie con el cátodo; Esto puede mejorar el tiempo de conmutación al reducir la cantidad de capacitancia en el circuito que debe cargarse / descargarse al cambiar, ya que el voltaje del cátodo se "colapsará" al voltaje del ánodo cuando está apagado.

Como se menciona en otro póster, si la corriente que necesita el LED es lo suficientemente baja, puede usar el GPIO directamente. En el modo de drenaje abierto, es idéntico al comportamiento con un FET externo (pero invertido). Pero no recomendaría ejecutar un puerto uC a más de 1 mA durante mucho tiempo; el IC podría no estar diseñado para grandes corrientes constantes como esa (podrían ser problemas de electromigración o autocalentamiento).

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.