Bastelseite Display + Antriebe Sensoren C++ | |
Mit der map-Funktion können z.B. hohe analoge Eingangswerte in niedrigere Digitalwerte umgewandelt werden
Hier bezieht sich z.B. "eingabe" auf einen analogen Eingang, der den Wert von 0 bis 1023 annehmen kann.
Die "ausgabe" soll ein digitaler Wert werden, der nur von 0 bis 255 reichen soll.
Außer die Variablen und die Werte zuzuweisen, muß nur noch der Befehl "map" eingesetzt werden. So einfach geht das.
"map" rechnet also immer den hohen Wert (z.B. 183) in den niedrigen Wert um: hier = 45. Ohne unser Zutun geschieht dies völlig von selbst.
Weiter unten kommt der Sketch, kopiere und starte ihn, aktiviere dafür den seriellen Monitor zur Anzeige.
Auslesen eines Potis: --------------------------- Poti-Wert: 510 - Ausgabe-Wert: 127--------------------------- Poti-Wert: 303 - Ausgabe-Wert: 75--------------------------- Poti-Wert: 0 - Ausgabe-Wert: 0--------------------------- Poti-Wert: 0 - Ausgabe-Wert: 0--------------------------- Poti-Wert: 0 - Ausgabe-Wert: 0--------------------------- Poti-Wert: 23 - Ausgabe-Wert: 5--------------------------- Poti-Wert: 145 - Ausgabe-Wert: 36--------------------------- Poti-Wert: 183 - Ausgabe-Wert: 45--------------------------- Poti-Wert: 272 - Ausgabe-Wert: 67--------------------------- Poti-Wert: 305 - Ausgabe-Wert: 76--------------------------- Poti-Wert: 305 - Ausgabe-Wert: 76--------------------------- Poti-Wert: 305 - Ausgabe-Wert: 76--------------------------- Poti-Wert: 486 - Ausgabe-Wert: 121--------------------------- Poti-Wert: 695 - Ausgabe-Wert: 173--------------------------- Poti-Wert: 921 - Ausgabe-Wert: 229--------------------------- Poti-Wert: 966 - Ausgabe-Wert: 240--------------------------- Poti-Wert: 1023 - Ausgabe-Wert: 255--------------------------- Poti-Wert: 1023 - Ausgabe-Wert: 255--------------------------- Poti-Wert: 905 - Ausgabe-Wert: 225--------------------------- Poti-Wert: 794 - Ausgabe-Wert: 197--------------------------- Poti-Wert: 739 - Ausgabe-Wert: 184--------------------------- Poti-Wert: 760 - Ausgabe-Wert: 189--------------------------- Poti-Wert: 834 - Ausgabe-Wert: 207--------------------------- Poti-Wert: 880 - Ausgabe-Wert: 219---------------------------
Öffnet den Sketch in einem eigenen TAB: map-funktion.ino
/* map-funktion.ino * * Auslesen eines Potentiometers mit der map-Funktion * Poti: Links an GND, Mitte an A1, rechts an +5V */ #include <Wire.h> int potianschluss = A1; int potiwert = 0; int ausgabe = 0; void setup() { Serial.begin(9600); Serial.println(" Auslesen eines Potis: "); Serial.println("---------------------------"); delay(2000); } void loop() { potiwert = analogRead(potianschluss); ausgabe = map(potiwert, 0, 1023, 0, 255); Serial.print("Poti-Wert: "); Serial.print(potiwert); Serial.print(" - "); Serial.print("Ausgabe-Wert: "); Serial.print(ausgabe); Serial.println("---------------------------"); delay(300); // kurze Pause zum Datenverarbeiten // und Zeit zum Lesen lassen! }