¿Existe una forma confiable y de bajo costo para identificar un puerto de carga USB?
Planeo cargar un dispositivo a través del puerto USB. La especificación 1.1 de carga de batería USB permite un consumo de corriente de 1.5A cuando se conecta a un puerto de carga dedicado (DCP) y 500 mA cuando se conecta a un puerto de carga descendente (CDP). Un DCP es típicamente una verruga de pared y un CDP es típicamente una computadora. Por lo que yo entiendo, un DCP se identifica por las líneas D + y D en corto, una identificación de CDP identificada por D + y D- que se tira a tierra a través de resistencias de 15k.
Parece que identificar estos puertos requiere bastante hardware adicional. Probablemente podría sesgar la línea D + y conectar D- a una entrada ADC para buscar un DCP. Y algún arreglo similar para verificar un CDP. Supongo que también necesitaría desconectar el sesgo y el ADC cuando termine para no interferir con la comunicación USB. Los pads USB en mi mcu no son tolerantes a 5V y son pads USB dedicados (estoy usando un LPC1343).
Identificar los cargadores no estándar de Apple y Sony sería una ventaja adicional, pero no crítica.
¿Alguien ve una manera más simple o mejor de hacer esto?
De esta hoja de datos