¿Cómo puedo comprobar la entrada de USB?

Tengo el siguiente cable como se muestra a continuación, un extremo tiene un conector USB macho y el otro extremo tiene cuatro cables. Lo sé, cuando está conectado a la computadora portátil, el ROJO actúa como fuente de voltaje y el NEGRO como tierra. Si doy una entrada de datos de 2 bits a VERDE y AMARILLO, ¿hay algún software o API para (Python, C o cualquier otro idioma) para conocer el estado de esos dos cables? Me refiero a verificar si el VERDE o el AMARILLO tienen voltaje o no.

ingrese la descripción de la imagen aquí

Por favor guíame si estoy haciendo la pregunta incorrecta.

Respuestas (2)

No, no puede detectar el estado del cable USB directamente. USB es una interfaz mucho más compleja que eso, no se compara con los puertos seriales y paralelos de estilo antiguo que podrían usarse para E/S directa con un programa de controlador simple. Se intercambia un protocolo de enlace complejo con la PC incluso antes de que se pueda enviar el primer byte de datos/carga útil 'reales'.

¿Quizás su PC tiene un puerto paralelo que se puede usar? O debe usar un convertidor USB a GPIO que está ampliamente disponible a precios variables (tanto extremadamente altos como extremadamente bajos).

Ejemplo: sparkfun.com/products/718 No tengo ninguna experiencia con este módulo, pero parece estar a la altura del trabajo. Hay muchas alternativas similares disponibles si miras un poco.
Solo una pequeña adición: no puede abusar de un puerto USB como este porque el apretón de manos ocurre a un nivel mucho más bajo que al que puede acceder con los lenguajes de programación normales. Partes del apretón de manos ocurren en el hardware.

¿Cuál es tu objetivo final? Si es para observar el protocolo USB, puede usar un analizador lógico relativamente económico o relativamente costoso .

Si su objetivo es capturar bytes en su computadora, puede obtener un depurador USB para su sistema operativo (por ejemplo, OS X tiene un kit de depuración USB gratuito).

Si su objetivo es tener una manera fácil de determinar si pone un voltaje en una entrada, sería mejor que usara un USB -> GPIO, como sugirió jippie, o podría seguir la ruta arduino (más costosa) y tiene mucho espacio para crecer si desea hacer más cosas con las entradas antes del análisis en la computadora.

Si realmente desea una forma súper simple de obtener un valor de voltaje en su computadora sin comprar hardware nuevo, la sugerencia de jippie de usar el puerto paralelo es buena , y también podría investigar el uso de la entrada de su micrófono como una solución improvisada.