¿Cómo puedo usar una mayor corriente de carga USB sin enumeración de dispositivos?

3

Estoy diseñando un dispositivo con comunicaciones USB, usando un microcontrolador STM32F105. Tiene una batería LiPo, que se carga desde el puerto USB mediante un controlador de carga LTC4077. En general, utilizará un puerto de carga de alta corriente para cargar la batería, pero a veces se conectará a una PC para las comunicaciones de datos.

Para mantenerse dentro de la especificación USB, el controlador de carga inicialmente permite una corriente de carga de 100 mA. Si el STM32F se enumera con un host USB apropiado, afirma una línea lógica que le indica al controlador de carga que tome 500 mA.

Tengo un interruptor de alimentación entre la batería / cargador y el resto del circuito. Cuando el interruptor está apagado, el microcontrolador no tiene alimentación y la batería se cargará a 100 mA.

P : ¿Cómo cargo a una corriente más alta sin la intervención del microcontrolador?

La especificación de carga de batería USB 1.2 (se encuentra aquí) ofrece diferentes opciones de hardware para cargar puertos, para permitir "Dispositivos portátiles" (como el mío) para determinar las capacidades del puerto de carga sin enumeración. Por ejemplo, un "Puerto de carga dedicado" (sin capacidad de comunicación) coloca una resistencia de 200 ohmios entre D + y D-. Si el dispositivo portátil detecta esta conexión, entonces puede asumir que el dispositivo puede suministrar una corriente más alta.

He encontrado algunos circuitos integrados de administración de cargos, como el MAX77301 , que maneja esta detección y establecer sus niveles actuales de carga adecuadamente. Sin embargo, hacen su propia enumeración y no pasan a través de los datos USB. Supongo que no se pueden colocar en paralelo con la ruta de comunicación de datos.

¿Qué me estoy perdiendo? ¿Qué se considera una buena práctica para lograr lo que estoy buscando hacer?

Gracias.

    
pregunta bitsmack

1 respuesta

3

Puede colocar un detector de carga en paralelo siempre que mantenga los talones extremadamente cortos. He hecho esto antes con un detector de carga Fairchild. No recuerdo el número de pieza exacto de la parte superior de mi cabeza.

O puedes echar un vistazo al BQ24392 de TI. Hace su propia enumeración (bueno, no enumeración ... hace la detección del cargador en la conexión inicial, luego conecta el bus USB al host), pero pasa los resultados de detección e incorpora un interruptor de bus USB para que Las trazas USB pasan a través de él al host No hay talones. Está diseñado específicamente con USB 2.0 en mente. Detecta correctamente cada tipo de cargador en el mundo conocido, ya sea que el cargador cumpla con las especificaciones de USB o no.

Pero puede haber una opción más simple. ¿Qué tan grande es tu batería? Para baterías más pequeñas (digamos menos de 1 Ah) puede ser más fácil simplemente habilitar siempre los 500 mA de consumo de corriente del USB. Por supuesto, esto significa que no cumplirá estrictamente con la especificación USB que dicta que hasta que se asigne un perfil, debe permanecer por debajo de 100 mA. Pero en la práctica, funcionará bien. En la actualidad, es raro encontrar un host que se oponga a que se extraigan 500 mA del puerto USB.

    
respondido por el mkeith

Lea otras preguntas en las etiquetas