In diesem Kapitel lernst Du, wie Du den Button mit einer LED verbindest.
Die LED soll leuchten, solange Du den Button gedrückt hältst. Damit das funktioniert, müssen wir zunächst ein neues Konzept verstehen: Bedingungen. Mit if kannst Du dem Arduino sagen:
Wenn eine Bedingung stimmt, mache etwas.
Ansonsten mache etwas anderes.
Beispiel:
if (hier die Bedingung) {
// Das passiert, wenn die Bedingung stimmt
}
else {
// Das passiert, wenn sie nicht stimmt
}
if kannst Du Bedingungen abfragen und dein Programm intelligent reagieren lassen. Egal ob Du ein Licht einschaltest, einen Ton abspielst oder ein Display steuerst, if steckt in so gut wie jedem Programm.
In unserem Fall ist die Bedingung, ob der Button gedrückt ist. Damit Du verstehst, wie if funktioniert, üben wir zuerst, den Status des Buttons im Serial Monitor auszugeben. Das hilft dir, sicherzustellen, dass der Button korrekt angeschlossen ist und der Arduino den Zustand richtig erkennt.
#define BUTTON_PIN 2
void setup()
{
Serial.begin(9600);
pinMode(BUTTON_PIN, INPUT_PULLUP);
}
void loop()
{
byte buttonState = digitalRead(BUTTON_PIN);
if (buttonState == LOW) {
Serial.println("Button is pressed");
}
else {
Serial.println("Button is not pressed");
}
delay(100);
}
Jetzt weißt Du, wie Du den Zustand eines Buttons prüfst und anzeigen lässt. Im nächsten Schritt wollen wir das Ergebnis nicht nur im Serial Monitor ausgeben, sondern mit der LED sichtbar machen.
INPUT_PULLUP nutzt, bedeutet das:HIGH (1)LOW (0)
Damit kannst Du den Arduino so programmieren, dass er je nach Zustand des Buttons entscheidet, ob die LED leuchtet oder nicht. Genau dafür brauchen wir die if-Abfrage.
if prüfen, ob der Button gedrückt ist.Falls Du nicht weiterweißt, schaue dir den Code aus Grundlagen 3 (Button lesen) und den Code aus Grundlagen 2 (LED blinken) an und kombiniere beide Ideen.