¿Cómo detecta una computadora (o dispositivo USB) que hay una conexión nueva / perdida?

1

Tengo dos computadoras, un teclado USB y un mouse USB. Quiero construir algo que me permita cambiar los dispositivos USB entre las dos computadoras. Mi enfoque sería comprar un nuevo concentrador USB con alimentación y conectar el teclado y el mouse en él. Luego, usaría un microcontrolador para controlar los transistores para las líneas de DATOS y DATOS + a las dos PC (hasta un total de cuatro transistores). Solo cortocircuitaría todos los cables de GND (desde el concentrador alimentado y las PC), eso no debería hacer ningún daño, ¿verdad? - y deje los cables de + 5V de las PC desconectados. Por lo que puedo ver, eso debería funcionar bien para el cambio.

Sin embargo, ¿cómo sabrían las PC (o el concentrador con alimentación) cuándo hacer un nuevo saludo y demás? ¿Es suficiente tener el cable de + 5V al concentrador USB alto de manera predeterminada y llevarlo a GND mientras se cambia? ¿El concentrador USB iniciaría un apretón de manos o algo cuando su cable USB + 5V se levante?

Además, ¿cómo descubriría la otra PC que acaba de perder la conexión? ¿Comprobando si hay un voltaje entre Data + y Data-?

    
pregunta thejh

3 respuestas

3

Lo que estás buscando se llama "interruptor KVM" (teclado, video y mouse), simplemente no necesitas la parte de video. Normalmente están disponibles y son fáciles de encontrar una vez que conoce el término correcto.

Pero a su pregunta específica sobre la enumeración USB: cada dispositivo USB tiene una resistencia de extracción en una de las líneas de datos (una para dispositivos de baja velocidad y otra para todos los demás). Un host o concentrador USB reconoce la presencia de esta resistencia e inicia la enumeración cuando aparece.

    
respondido por el Dave Tweed
1

USB utiliza el sondeo para enumerar y detectar cuándo se pierde un dispositivo. Si el dispositivo esclavo usb no responde en un período de tiempo determinado, la conexión usb se pierde, incluso si el dispositivo no está desconectado.

Consulte usbtiny y v-usb para implementaciones de software usb para los microcontroladores de la marca amtel.

    
respondido por el Passerby
0

Puedes usar un FSUSB30MUX. Tiene 2 x interruptores SPST para cambiar las líneas de datos entre dos puertos.

    
respondido por el Mahesh Reddy

Lea otras preguntas en las etiquetas