Menu
CoddyTech

Einen Knopf auslesen

Teil des Abschnitts Erste Schaltungen der Arduino-Journey von Coddy. Lektion 22 von 22.

Ein Pin kann auch ein Eingang sein: Das Board liest aus, ob er HIGH oder LOW ist.

Dieser Taster verbindet Pin 2 mit Masse (0 Volt), solange du ihn gedrückt hältst. Wenn er nicht gedrückt ist, ist der Pin mit nichts verbunden und würde zufällige Werte lesen. INPUT_PULLUP schaltet einen Pull-up-Widerstand im Board ein, der den Pin auf HIGH hält, bis der Taster ihn auf LOW zieht:

pinMode(2, INPUT_PULLUP);

digitalRead(2) gibt den Pegel des Pins zurück. Mit einem Pull-up-Widerstand liest ein gedrückter Taster LOW:

if (digitalRead(2) == LOW) {
  // Die Taste ist gedrückt
}

Der Rest ist dir bereits bekannt: Mit if und else wählst du aus, mit digitalWrite() steuerst du die LED und mit Serial.println() gibst du eine Meldung aus.

challenge icon

Aufgabe

Einfach

Der Taster ist an Pin 2 und die LED an Pin 13 angeschlossen. Lass die LED leuchten, solange der Taster gedrückt wird:

  • setze Pin 2 auf INPUT_PULLUP
  • wenn digitalRead(buttonPin) LOW ist, schalte die LED ein, gib Pressed aus und warte 200 ms (damit der Monitor nicht überflutet wird)
  • andernfalls schalte die LED aus

Drücke Run, halte den grünen Taster auf der Platine gedrückt und drücke dann Check.

Probier es selbst

const int buttonPin = 2;
const int ledPin = 13;

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {

}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Erste Schaltungen

Übe selbstständig: Arduino-Playground