Circuito de selección de potencia para USB o DC Jack - ambos a 5V

Estoy diseñando una placa nueva, donde necesito detectar si el conector de entrada de CC para alimentar la placa se ha conectado y luego desconectar la fuente de alimentación USB. También necesito detectarlo con el uC para habilitar algunas funciones cuando tengo una fuente de alimentación. El problema es que ambos son entradas de 5V.

Fuente de alimentación DC:

Fuente de alimentación DC

Fuente de alimentación USB y selector de alimentación:

Fuente de alimentación USB y selector de potencia

Tengo un par de condiciones en este circuito:

  • Alimentación de CC no conectada/USB conectado/Función de host USB APAGADA : En este escenario, el comparador emite un voltaje bajo que hace que Q3 esté ENCENDIDO (canal p) y esto me ayuda a tener 5 V limpios a través de este circuito.
  • Alimentación de CC conectada / USB conectado / Función USB Host APAGADA : En este caso, quiero desconectar la alimentación del conector de CC del USB, para que la corriente no entre en el conector USB. No debería, ya que ambos son de 5V, pero quédate conmigo. Entonces, el comparador genera un alto voltaje y apaga Q3, desconectando VUSB y 5V, y tomando corriente solo del conector de CC.
  • Alimentación de CC conectada/USB conectado/Función de host USB ENCENDIDA : ahora quiero que el dispositivo pueda proporcionar energía al puerto USB, así que enciendo Q2 con la señal USB_HOST_EN y la energía puede fluir de 5 V a VUSB a través de Q2.

Este circuito es una remezcla de la placa de conexión SparkFun SAMD21 y el típico circuito selector de potencia que utilizan muchas placas Arduino.

El problema que veo es que cuando el USB está conectado, los 5V del USB también se pueden encontrar en VJACK, por lo que el comparador siempre tendrá su salida en un estado ALTO.

Q1 es un transistor de protección de polaridad inversa. Pensé en solo poner un diodo y eso resolvería todos estos problemas, pero no tendría 5V después del diodo, sino una caída de 0.7V o más.

Además, dado que tanto el conector de CC como el USB tendrán 5 V, pensé que todo el circuito de selección de energía no podría estar allí, y simplemente unir ambas salidas de 5 V, después de Q2. Pero luego, el diodo del cuerpo de Q2 también caería 0.7V cuando Q2 está apagado (operación sin host) y tendría menos voltaje del requerido.

¿Alguien puede ayudar con ideas sobre cómo resolver esto?

¡Muchas gracias!

En una nota diferente, el escudo USB generalmente no está conectado a GND en el sitio del dispositivo esclavo, o conectado a través de un pequeño condensador. Ver aquí: ¿ Cómo conectar el blindaje del conector USB?

Respuestas (1)

Un camino simple que ha escapado a sus consideraciones es que la mayoría de los conectores de barril de alimentación de CC tienen un contacto adicional, precisamente con el propósito de facilitar la selección de fuentes de alimentación. Vea este contacto en sus esquemas, en un círculo rojo:

ingrese la descripción de la imagen aquí

Hay muchos usos de este contacto adicional, y estoy seguro de que su uso simplificará enormemente su problema.

Muchas gracias. Eso realmente puede ayudar. Es, por ahora, una posible solución, vinculando ese pin a 5V a través de un pull-up, y con eso enciende o apaga el Q3. Si el enchufe está conectado, los 5 V apagarían el transistor según lo solicitado, y si el enchufe no está allí, el conector lo conectará internamente a GND. ¡Gracias! Creo que otras respuestas aún pueden ayudar, pero es una gran captura.
Es útil en algunas circunstancias, pero debe tener en cuenta que la activación del interruptor "enchufado" en el conector no es lo mismo que la energía disponible. En primer lugar, porque el interruptor a veces se dispara antes de que el enchufe realmente haga contacto y, en segundo lugar, porque un usuario puede conectar la fuente de alimentación al dispositivo antes de conectarlo a la pared.
@PeterGreen, a menos que me haya perdido algo, no veo el requisito de que la energía sea ininterrumpida.
Sí, no lo mencioné, pero Peter tiene razón, y de hecho lo pensamos. Una nueva solución que se nos ocurrió es esta: goo.gl/fb8Awa Un interruptor de alimentación digital. Podemos medir el nivel de voltaje en la entrada del IC y habilitarlo dependiendo de esta medida. Y también, encenderíamos o apagaríamos Q3 con el uC, para asegurarnos de que tenemos energía antes de desconectar la alimentación USB. Sería peligroso no detectar si el voltaje de la fuente de alimentación está o no, ya que planeamos darle a los LED un brillo determinado con USB y un brillo diferente con un EPS. ¡Gracias a los dos!
@sanotronics, si habla en serio, no necesita inventar sus propios interruptores. Hay una línea de circuitos integrados llamados "Power Path Controllers". analog.com/en/parametricsearch/11029 Es posible que desee consultar otras publicaciones relacionadas como electronics.stackexchange.com/a/351468/117785 o electronics.stackexchange.com/a/321927/117785
@Ale..chenski, ¿crees que el AP2511M8-13 no funcionaría? La descripción es "CI de interruptor de alimentación - Distribución de alimentación 2.5A". Necesito que sea una solución económica, ya que no dispongo de mucho espacio, ni costo de placa de sobra.
El ADP1196, lo encontré en el enlace que proporcionó, parece tener la misma funcionalidad que el AP2511 y 5 veces más caro ($0.21 vs $1.03 por 100 pc). Tal vez sea de mejor calidad ya que son dispositivos analógicos vs Diodes Inc. Verificaré costos y elegiré el que se adapte a mis necesidades. ¡Gracias!