7 votos

Es posible hacer que un dispositivo USB que pueda alterar datos de ratón sobre la marcha?

Tengo un amigo que está luchando para encontrar los controladores de ratón/fabricantes que admiten varias opciones para la dislexia. La inversión de los ejes X y y son una función simple que la mayoría de los programas y los controladores son ignorantes.

La idea se me ocurrió que podría ser posible construir un pequeño dispositivo USB (similar a una unidad de disco usb o PS/2 adapter) que un usuario puede conectar un ratón USB en y, a través de un par de interruptores DIP, invertir uno o ambos ejes.

Tengo un conocimiento básico de programación (C#/C+) y la electrónica, pero no estoy seguro de si hay un protocolo estándar para ratones USB.

Prefiero evitar el uso de un convertidor de serie (aunque sé que tiene más o menos estándar de protocolo). Alguien ha utilizado ratones USB con un custom electronics proyecto, o puede explicar si la construcción de un USB a USB adaptador para invertir el movimiento es posible?

4voto

Armandas Puntos 552

Esto sería bastante difícil de conseguir. El dispositivo tendría que comportarse como un host USB y un periférico USB. Puede haber microcontroladores ahí fuera que se puede hacer, pero usted podría terminar encima de tener que usar dos, uno para ser el anfitrión, y uno de los esclavos.

Si usted está sugiriendo algo como el uso de un ratón de serie, a continuación, su trabajo sería mucho más fácil de lograr. Usted acaba de necesidad de un microcontrolador con 2 puertos serie, además de los dos de la interfaz de serie de fichas (Como MAX202, o la que sea la versión más reciente).

Incluso una opción más fácil sería tratar de escribir un programa de windows que iba a hacer la inversión.

2voto

Craig Hyatt Puntos 158

Si bien esto es probablemente muy lejos de la más barata o la más elegante de la solución, que es la que te dará una gran flexibilidad.

Un Arduino único ordenador de a bordo puede mirar a un host de Windows de la computadora como un Dispositivo de Interfaz Humana (HID), en otras palabras, un ratón. No se limita a los ratones; sin embargo, teclados y otros dispositivos HID así.

Se puede conectar un mouse serie directamente a la placa Arduino del puerto serie o si prefiere utilizar un ratón USB se puede conectar a la placa Arduino a través de un USB host shield.

Puesto que usted puede programar el Arduino en C puede traducir cualquier tipo de entradas desde el ratón en alguno de los comandos te gusta ir a la PC. Usted podría, por ejemplo, traducir un triple clic en el botón derecho del ratón en una entrada de teclado comando, el cielo es el límite.

1voto

Armandas Puntos 552

OK, he aquí una posible solución:

Como dijo ben, esto sería mucho más fácil si se utiliza un ratón PS/2, porque eso es básicamente simple de datos en serie.

Sin embargo, si usted realmente necesita para ser un dispositivo USB, entonces tal vez tal vez un uso un USB-PS/2 convertidor, y un PS/2-USB convertidor, y coloque su dispositivo en el medio de ellos.

Eché un vistazo alrededor y no podía encontrar inmediatamente un chipset que va a hacer el trabajo, a pesar de que debe existir. Pero usted puede simplemente comprar las unidades:

USB PS2 converters

1voto

Armandas Puntos 552

Sin embargo, otra solución sería instalar MAF-Soft ratón eje inversor controlador para windows.

1voto

Cebjyre Puntos 128

Usted puede utilizar el código abierto LUFA pila para hacer nativo USB HID (dispositivo de interfaz humana) de proyectos. Adafruit lleva a una fuente abierta dev board que es compatible con la LUFA pila.

El uso de un ratón USB con tu consejo sería complicado. El uso de un ratón PS/2 debe ser mucho más fácil, aunque. El protocolo es más simple y probablemente se puede encontrar una biblioteca en cualquier lugar. Aquí es un Arduino biblioteca que se puede leer de un ratón PS/2, que podría ser de algún uso.

Para el conector PS/2, SparkFun lleva una placa adaptadora y el puerto que debe trabajar.

Las probabilidades son que usted puede también cambiar algunos programas de software en el equipo para hacer esto, que sería más barato, pero menos portable. Una rápida búsqueda en google muestra que esto es básicamente un comando para un equipo con Linux.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X