Inhaltsverzeichnis

1. Was man auf dem Foto eindeutig erkennt

Arduino-Pins

Tasterbeschaltung

👉 Wichtig: Das bedeutet:

Dein aktueller Code wertet nur Pin 3 aus. Pin 4 existiert elektrisch, aber softwareseitig noch gar nicht.


2. Warum der vorhandene Code die Aufgabe NICHT erfĂĽllt

Aktuell:

snippet.cpp
if (digitalRead(3) == HIGH)
  LED an
else
  LED aus

Das ist ein Taster = Momentkontakt. Sobald man loslässt → LED wieder aus.

Die Aufgabe verlangt aber:

🔹 linker Taster → einschalten
🔹 rechter Taster → ausschalten
🔹 LED merkt sich den Zustand

Also: kein else, sondern zwei unabhängige Entscheidungen.


3. Minimal korrekte Lösung (exakt zur Aufgabe passend)

Kein Schnickschnack, keine Entprell-Orgie, didaktisch sauber:

snippet.cpp
void setup()
{
  pinMode(2, OUTPUT);   // LED
  pinMode(3, INPUT);    // linker Taster (EIN)
  pinMode(4, INPUT);    // rechter Taster (AUS)
}
 
void loop()
{
  if (digitalRead(3) == HIGH)   // linker Taster gedrĂĽckt
  {
    digitalWrite(2, HIGH);      // LED EIN
  }
 
  if (digitalRead(4) == HIGH)   // rechter Taster gedrĂĽckt
  {
    digitalWrite(2, LOW);       // LED AUS
  }
}

Warum das korrekt ist


4. Typischer Denkfehler

Viele machen hier reflexartig:

snippet.cpp
if (Taste1) LED an;
else LED aus;

Das ist falsch, weil:

Merksatz fĂĽr die PrĂĽfung:

Schalten ≠ Gedrückt halten


5. Wenn der Lehrer pingelig ist (Bonuswissen)