Conmutación de transistor por NPN y PNP: ¿cómo se construye?

Quiero alternar entre 2 dispositivos usando un pin GPIO 3.3v y encendiéndolos con 5v.

Pensé en usar un transistor NPN y PNP, vinculando la base y el colector/emisor a una fuente de alimentación de 5v. Si el pin GPIO va ALTO o BAJO, cambie a través de cualquiera de los transistores.

Hasta ahora, he intentado mucho para que funcione de alguna manera. Pero parece que no puedo hacer que el transistor NPN o PNP no se active hasta cierto punto de alguna manera.

Estoy demasiado avergonzado para mostrar cualquiera de estos intentos de novato, y solo quiero pedirles ideas sobre cómo abordar ese problema. ¿Estoy yendo por un camino completamente equivocado con esto?

¿ Está mal pensar en ello como un Yinterruptor?

Gracias por tu aporte en este asunto tan confuso.

EDITAR: alguna idea básica, sin resistencias (ya que son parte de mi problema: no puedo averiguar dónde colocarlas y qué tan fuertes). Colocadas en mi tablero para comenzar con los LED ...

Un LED debe estar ENCENDIDO mientras se presiona el interruptor, luego debe cambiar al otro si se presiona.

Edición 2: Gracias por todas sus increíbles adiciones a la publicación. Probablemente me llevará algún tiempo buscar todos los términos y tratar de entender las explicaciones :) Así que tengan paciencia conmigo.

ingrese la descripción de la imagen aquí(por cierto: solo captura de pantalla: CircuitLab me muestra un error CSRF al intentar registrarme :/)

Adelante, muéstranos lo que tienes. Te garantizo que alguien aquí lo ha hecho peor; ¡No te preocupes por avergonzarte! Estamos aquí para ayudar.
Probé lo esquemático, ni siquiera estoy seguro, lo hice correctamente. Lo siento mucho si esto está mal
¿Estás realmente tratando de cambiar entre dos LED? Eso es muy diferente a querer dos salidas conmutadas limpias de 5V.
Hay algunas cosas que noto que son un problema potencial aquí. Uno, la corriente puede fluir a través de la unión base-emisor de Q2, a través de la unión base-emisor de Q1 ya través de D2 cuando el interruptor está abierto; son solo tres diodos en serie, efectivamente. Dos, no tiene resistencias limitadoras de corriente aquí, y este circuito probablemente quemará sus LED y transistores.
" Así que, por favor, desnuda conmigo ". Nos estás invitando a desvestirnos contigo. Creo que deberías escribir "por favor, ten paciencia conmigo".

Respuestas (5)

Ampliando la respuesta de Tony Stewart, que debería funcionar para la lógica de 3,3 V, el siguiente circuito también funcionará con la lógica de 5 V.

ingrese la descripción de la imagen aquí

Figura 1. Un pin GPIO puede controlar dos LED. Fuente: 1 GPIO, múltiples LED .

Cómo funciona

  • Cuando la salida se cambia a nivel bajo, la corriente fluirá desde el suministro positivo a través de R1 y L1, verde, al pin de salida. L1 se iluminará. L2, rojo, estará en cortocircuito y estará oscuro.
  • Cuando la salida se cambia a nivel alto, la corriente fluirá desde el pin a través de R2 y L2. El LED rojo se iluminará y el verde se oscurecerá.
  • Si la salida tiene tres estados (cableada como entrada o desconectada por el control del programa), fluirá una corriente a través de R1, L1, R2, L2 y ambos LED se iluminarán tenuemente. En un dispositivo de 3,3 V, el voltaje no sería lo suficientemente alto como para iluminar significativamente ambos LED, por lo que parecerían oscuros.

Lo que estás haciendo es correcto siempre que estés manejando el gpio (y agrega R2)

Si deja que el GPIO flote, ambos LED intentarán encenderse. Siempre que lo conduzca alto o bajo, funciona. Esto no es muy bueno en 3.3V, ya que solo puede obtener 2.6V para hacer funcionar el LED fuera de la NPN: funcionará bien con un LED rojo, pero se vuelve marginal para el verde cuando se consideran las tolerancias de suministro.

esquemático

simular este circuito : esquema creado con CircuitLab

Este arreglo se adapta a su pregunta original de usar el 5V. Funciona cambiando los LED o cualquier otra cosa con un voltaje de encendido mínimo, pero no es un arreglo de conmutación limpio ya que Q2 funciona con Q1.

esquemático

simular este circuito

La conmutación del lado alto cuando la entrada no es tan alta es complicada, y su requisito de que no haya corriente de fuga a través de la carga lo hace más complicado.

Yo usando solo NPN y PNP me tomó 5 transistores para hacerlo

esquemático

simular este circuito : esquema creado con CircuitLab

Verá que las personas usan una resistencia pullup de Q1,4 bases a +5. De lo contrario, las corrientes de fuga en Q1,2,3,4 se amplifican por la ganancia y se obtiene algo de corriente de salida a altas temperaturas.

No hay un arreglo muy simple: terminas con 3 bjt, 5R o 1pnp, 2R, 1PFet.

Un solo paquete inversor podría funcionar. Si usa inversores HC o AC, use el GPIO como un drenaje abierto, R5 eleva el GPIO por encima de los 3.3V hasta que el diodo de protección conduce, es decir, obtiene 4V en el GPIO y los inversores de 5V estarán completamente encendidos.

esquemático

simular este circuito : esquema creado con CircuitLab

Otro componente fantásticamente versátil es el conmutador analógico. 74HC4053 triple SPDT haría esto por usted...

esquemático

simular este circuito

esquemático

simular este circuito : esquema creado con CircuitLab

Elija R basado en R1=(3.3-Vf)/Si -33 Si R es negativo, solo significa que no puede manejar tanta corriente.

para rojo Vf=2.0 @ 10mA, R1=100 ohmios
para blanco Vf=3.1 @ 20mA, R1=0 ohmios y si ~10mA (similar para verde azul, R=0V)

33 ohmios es mi estimación de su GPIO Vol/Iol=RdsOn. Puede cambiar verificando con la especificación de su dispositivo, que generalmente se encuentra cerca de la parte posterior de la especificación de 600 páginas. Los dispositivos ARM suelen ser de 3,3 V y 25 ohmios, mientras que las CPU de 5 V son de ~ 50 ohmios. Esta característica es "suelta" +/-50% en el peor de los casos sobre todos los dispositivos y sobretemperatura, pero adecuada para esta aplicación.

Su diseño BJT quemaría ambos emisores base en serie a través de 3.3V con un límite típico << 2V en total.

Tus dos leds se van a encender en tu circuito, porque si uno de ellos está encendido, el otro estará alrededor de 3v ya que cierran un bucle con los 3.3v ¿no?
No. El GPIO tiene un interruptor de derivación CMOS como toda la lógica CMOS. Si la salida es de 3 V, el lado positivo del LED tiene una caída de 0 V. La salida CMOS es como un interruptor SPDT con un R interno de 25 a 50 ohmios
Si uno de los FET falla, o si la entrada se dejó flotando, parece posible que ambos LED se enciendan. Pero 3.3V probablemente no quemará dos LED de serie, incluso sin una resistencia. Tal vez.
eso es poco probable