Soviel also zum Aufbau der Mausmechanik.
Nun wollen wir uns einmal überlegen, was
wir zu einer Mausabfrage beachten müs-
sen. Zunächst einmal wollen wir die ein-
zelnen Zustände der Maussignale untersu-
chen um herauszufinden, in welche Rich-
tung die Maus bewegt wird. Hierbei
beschränke ich mich wieder auf die Hori-
zontalbewegung, da der Ablauf für die
Vertikalbewegung identisch ist.
Betrachtet man einmal die Oszillatorkur-
ven in der Grafik oben und "übersetzt"
man sie in Bitmuster (0 für "low", 1 für
"High"), dann erhält man für die einzel-
nen Bewegungen folgende Bilder:
Linksbewegung : H - ...0011 0011...
HQ - 0110 0110
Rechtsbewegung: H - ...0110 0110...
HQ - 0011 0011
Nach jeweils 4 Signalen wiederholt sich
das Ganze immer wieder. Wie Sie sehen
kommen in beiden Bewegungen die H/HQ-
Kombinationen 00,01,10 und 11 vor. Die
Unterschiede der beiden Signale, an de-
nen wir dann die Richtung erkennen kön-
nen sind folgende:
1) Ist die Bedingung H=HQ=0 erfüllt, und
sind sind folgenden Signale H=0 und
HQ=1, so fand eine Bewegung nach
LINKS statt.
2) Ist die Bedingung H=HQ=0 erfüllt, und
sind die folgenden Signale H=1 und
HQ=0 (also genau umgekehrt), so fand
eine Bewegung nach RECHTS statt.
3) Ist die Bedingung H=HQ=1 erfüllt, und
sind die folgenden Signale H=1 und
HQ=0, so fand eine Bewegung nach
LINKS statt.
4) Ist die Bedingung H=HQ=1 erfüllt, und
sind die folgenden Signale H=0 und
HQ=1, dann fand eine Bewegung nach
RECHTS statt.
Zur genauen Bestimmung der Richtung müs-
sen wir also ZWEI zeitlich voneinander
versetzte Signale GLEICHZEITIG auswer-
ten! Das kann unter Umständen sehr kom-
pliziert werden, da mehrere Vergleiche
ineinander verschachtelt werden müssen,
um die genaue Richtung herauszufinden.
Aus diesem Grund habe ich eine sinnvolle
Vereinfachung durchgeführt, die durch
folgende Grafik erklärt werden soll: