-
-
Erfahrener Benutzer
Fleißiges Mitglied
Zahlen normieren, Joystick calibrieren
Hallo,
da mein Sohn mir mal wieder seine Hilfe versagt, wende ich mich an Euch, vieleicht hat jemand eine Idee
Ein Analogeingang fragt die Stellung eines Joysticks ab und gibt die Werte als 3-bit Digitalzahl aus (3 Ausgänge).
Ist der Joystick in Home-Position wrd eine Taste betätigt und der Wert gespeichert (min).Danach wird der Stick in vorderste Stellung gebracht, eine Taste gedrückt und dieser Wert gespeichert (max).Ich habe dann die beiden Werte min und max, der Joystick ist calibriert:
min----------------------------------------------------max
Danach werden die beiden Werte addiert und durch zwei geteilt (shift rechts):
min------------------------midd---------------------max.
Das gleiche mit min/midd und mac/midd (addieren und durch zwei teilen):
min--------minmidd--------midd--------middmax-----------max.
Das gleiche nochmal um die Auflösung zu verdoppeln (addieren und durch zwei teilen):
Dann habe ich 9 Variable und 8 Datenbereiche :
min---min1---minmidd---min2---midd---max1---middmax---max2---max
----- 0--------1--------------2--------3---------4---------5----------------6---------7 Werte Dezimal
-----0--------1------------- 2-------1,2-------4--------4,1-------------4,2-----4,1,2 Out (binär)
----------------1--------------2-------1,2-------3--------3,1-------------3,2------alle Pins (Out)
Nun kann ich den Datenbereichen die entsprechend Wertigkeit zuordnen:.
Hat jemad eine Idee wie ich ohne aufwendige IF-Konstruktionen die Datenbereiche den Ausgängen zuordne?
Das Einlesen der Joystickstellung ergab z.b. einen Wert zwischen min---min1, dann müssen alle drei Pins auf 0 gesetzt werden oder einen Wert zwischen max1 und middmax, dann müssen die Pins 3 und 1 auf 1 gesetzt werden.
Irgendwelche Ideen oder gehts auch einfacher ?
Gruss
Wolfgang
-
Erfahrener Benutzer
Fleißiges Mitglied
Hi Leute,
das Problem hat sich erledigt, auf dem Heimweg ist mir ein 8-Zeiler eingefallen.
Gruss
Wolfgang
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen