Para cada eje en un mouse mecánico (bola) hay un par de transmisor y receptor IR con una rueda que parece tener solo ranuras simples.
¿Cómo se calcula la dirección?
Para cada eje en un mouse mecánico (bola) hay un par de transmisor y receptor IR con una rueda que parece tener solo ranuras simples.
¿Cómo se calcula la dirección?
Respuestas:
No solo hay un par transmisor / receptor IR, hay dos de ellos. Entre transmisores y receptores hay una rueda ranurada que, al girar, provoca un tren de pulsos en el receptor. (La luz del transmisor está bloqueada, puede pasar, bloqueada nuevamente, etc.)
El truco es cómo se colocan los dos receptores, es decir, en cuadratura.
Esto significa que los pulsos de un receptor preceden a los pulsos del otro en varios grados (idealmente 90 °). Si la rueda gira hacia el otro lado, los mismos pulsos ahora retrasan a los demás.
Observe que en un borde ascendente del canal A, el canal B está en un nivel alto cuando gira en un sentido y en un nivel bajo cuando gira en el otro.
El patrón específico es típico de la codificación Gray .
sobre la codificación Gray
El binario ordinario tiene la desventaja de que las transiciones de código pueden crear códigos erróneos durante la transición. Tomemos, por ejemplo, el cambio de0111
(7) a1000
(8). Si el bit más a la izquierda es un poco más rápido que los demás, verá por un momento1111
(15), que está totalmente desactivado.
El código gris supera esto reorganizando los códigos para que solo haya un cambio de 1 bit a la vez.
Sin embargo, los codificadores absolutos no lo ayudarán a encontrar la posición absoluta del mouse, porque la rueda gira varias veces mientras mueve el mouse. El patrón "único" se repetirá cada pocos mm y no es tan único después de todo. Además, siempre es posible mover el mouse cuando la computadora está apagada, o puede levantar el mouse y volver a bajarlo un poco más. Ambas acciones pasarán desapercibidas.
i.imgur.com
a stack.imgur.com
.