Kann jemand mir helfen bei Arduino?

1 Antwort

zu 1.: Einfach den in der Aufgabenstellung beschriebenen Ablauf in grafischer Weise darstellen.

zu 2.: Folgendes Skript habe ich kurz geschrieben, aber nicht getestet. Sollte also hoffentlich funktionieren:

//Pins setzen
const int buttonPin = 13;
const int redLedPin = 19;
const int greenLedPin = 21;

void setup() {
  pinMode(buttonPin, INPUT);
  pinMode(redLedPin, OUTPUT);
  pinMode(greenLedPin, OUTPUT);
}

void loop() {
  // Warte auf Tasterbetätigung
  while (digitalRead(buttonPin) == HIGH) {
    delay(10);
  }

  // Taster betätigt
  unsigned long startTime = millis();
  while (digitalRead(buttonPin) == LOW) {
    delay(10);
  }

  // Taster freigegeben
  unsigned long endTime = millis();
  unsigned long pressDuration = endTime - startTime;

  if (pressDuration < 1500) {
    // Kurzer Tastendruck
    digitalWrite(redLedPin, HIGH);
    delay(5000);  // Warte 5 Sekunden
    digitalWrite(redLedPin, LOW);
  } else {
    // Langer Tastendruck
    digitalWrite(greenLedPin, HIGH);
    delay(5000);  // Warte 5 Sekunden
    digitalWrite(greenLedPin, LOW);
  }
}
Woher ich das weiß:Hobby