Auf einen Prozentsatz abbilden
Teil des Abschnitts Eingaben der Arduino-Journey von Coddy. Lektion 10 von 22.
Messwerte von 0 bis 1023 sagen einem Menschen wenig. Ein Prozentwert von 0 bis 100 ist leichter verständlich. map() wandelt eine Zahl von einem Wertebereich in einen anderen um:
int percent = map(reading, 0, 1023, 0, 100);Die Funktion nimmt fünf Zahlen entgegen: den Wert, die untere und obere Grenze seines Wertebereichs sowie die untere und obere Grenze des neuen Wertebereichs. 0 wird zu 0, 1023 wird zu 100, und ein Wert, der ein Viertel des Weges zurücklegt, landet ebenfalls bei einem Viertel: 256 wird zu 25.
map() arbeitet mit Ganzzahlen und verwirft jeden Nachkommaanteil, was für einen Prozentwert in Ordnung ist.
Aufgabe
EinfachDer Drehknopf ist an A0 angeschlossen. Gib aus, wie weit er gedreht ist, als Prozentwert:
- A0 auslesen
- den Messwert mit
map()in einen Wert von 0 bis 100 umwandeln - den Prozentwert ausgeben und dann 100 ms warten
Klicke auf Run, drehe den Drehknopf und klicke dann auf Check.
Probier es selbst
void setup() {
Serial.begin(9600);
}
void loop() {
int reading = analogRead(A0);
// Den Messwert mit map() in einen Prozentwert umrechnen, ihn ausgeben und 100 ms warten
}
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Eingaben
2Analoge Eingänge
Einen Drehknopf auslesenDrehknopfwerte in Volt umrechnenAuf einen Prozentsatz abbildenWerte im Bereich haltenSchwellenwert des DrehknopfsAutomatisches NachtlichtSchaltpin des LichtsensorsÜbe selbstständig: Arduino-Playground