LED conectado al pin de drenaje abierto [duplicado]

0

Configuré un pin en mi microcontrolador (descubrimiento STM32F4) como un drenaje abierto y quería conectarlo a una red de pull-up de 5 V y controlar un LED. La salida de mi pin es de 3 V, por lo tanto, quise subir el pin a otro voltaje si tengo otro dispositivo que requiere 5V. Estoy usando un LED como ejemplo para probar la prueba de concepto, pero estoy confundido de por qué no funcionaría:

TambiénheestadoleyendosobreLogicLevelConverterrecientemente,dondepuede"convertir" su 3V a 5V. ¿Debería estar usando eso en su lugar?

    
pregunta Moeiz Riaz

2 respuestas

1

La pregunta marcada por berendi muestra qué funcionará, pero no Cubrir completamente algunos aspectos relevantes.

Tal como se muestra, el circuito simple (el pin conectado al LED a tierra y la resistencia a V + > Vdd) puede causar un funcionamiento incorrecto del sistema y, en algunos casos, dañar el uC (microcontrolador). Al agregar un transistor para controlar el LED, como se muestra en el conjunto Q & A, se incrementa en gran medida la flexibilidad disponible: la corriente del LED puede ser mayor y la tensión de carga es independiente de la capacidad de uC.

El uso del pin como se muestra funcionará para los LED con Vf inferior a uC_Vdd. Sin embargo:

  • Si el LED tiene un Vf de, por ejemplo, 3V3, el pin pasará a 3V3 cuando el pin esté apagado, lo que posiblemente causará un mal funcionamiento del sistema si Vdd es de 3V.

  • I_LED_max permisible es la corriente que el pin uC puede bajar por debajo de los LED en el voltaje, digamos < 1.5 V para un LED blanco y muy por debajo de 1 V para un LED rojo o IR. Esto puede ser bastante bajo, dependiendo de la capacidad de la unidad de pines.

    Como se muestra, ILed es aproximadamente (5V-Vled) / 10k = aproximadamente 0.2 mA para un Vf ~ = 3V LED blanco y 0.3 mA para Vf ~ = 2V un LED rojo. En esos niveles actuales, con los LED típicos obtendrá luz pero no será brillante.

ASÍ, esta disposición PUEDE funcionar para algunos valores de "can", pero agregar un transistor le otorga MUCHO mejor control y flexibilidad.

El siguiente diagrama es de la respuesta de StevenH a la pregunta de 2012.

LatensióndealimentacióndelLEDsemuestracomo3V3,peropuedesermásaltaqueladeVdd,sujetoaldiseñodelosvaloresdeR2yR3,demodoqueVpinnuncaes>Vddcuandoelpinestáapagado/abiertoyeseQ2recibiósuficientedreivecuandoelpinestábajo.

Comosemuestra,seutilizauntransistorbipolar,perounFETdecanalPharíaeldiseñounpocomásfácil.

Elcircuitoacontinuación(delapreguntade2012)funcionaríacomoestáconunimpulsordepinesestándar(push-pull/highlow),oconunpindedrenajeabiertosiR32sereemplazóconuncableyseagregóunaresistenciapullupadecuadadelabasedeltransistorauCVdd.
EstecircuitoinviertelapolaridaddelniveldelpinyelestadodelLED.porejemplo,
Original-pinbajo=LEDencendido.
Contransistor-pinalto=LEDencendido.

    
respondido por el Russell McMahon
0

Esto es lo que hago con un STM32F:

simular este circuito : esquema creado usando CircuitLab

Pero diferente valor de LED y resistencia.

Asegúrese de mantener la corriente del LED por debajo de la especificación para los puertos de drenaje abiertos y no use demasiados pines de esta manera.

    
respondido por el laptop2d

Lea otras preguntas en las etiquetas