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 Y
interruptor?
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.
(por cierto: solo captura de pantalla: CircuitLab me muestra un error CSRF al intentar registrarme :/)
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.
Figura 1. Un pin GPIO puede controlar dos LED. Fuente: 1 GPIO, múltiples LED .
Cómo funciona
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.
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.
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
simular este circuito : esquema creado con CircuitLab
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.
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...
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.
Hogar
PlátanoÁcido
henry crun
Hogar
Transistor