Wie kann ich den Loop nach fünf Wiederholungen beenden?
Hallo,
ich habe folgenden Code:
// C++ code
//
void setup()
{
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(11, OUTPUT);
pinMode(10, OUTPUT);
}
void loop()
{
digitalWrite(13, HIGH);
delay(100); // Wait for 100 millisecond(s)
digitalWrite(13, LOW);
delay(100); // Wait for 100 millisecond(s)
digitalWrite(12, HIGH);
delay(100); // Wait for 100 millisecond(s)
digitalWrite(12, LOW);
delay(100); // Wait for 100 millisecond(s)
digitalWrite(11, HIGH);
delay(100); // Wait for 100 millisecond(s)
digitalWrite(11, LOW);
delay(100); // Wait for 1000 millisecond(s)
digitalWrite(10, HIGH);
delay(100); // Wait for 100 millisecond(s)
digitalWrite(10, LOW);
delay(100); // Wait for 100 millisecond(s)
}
Ich möchte, dass dieser Loop nach fünfmal endet.
Wie geht das?
Vielen Dank für die Hilfe.
2 Antworten
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
Computer, programmieren
Du brauchst an sich nur eine Variable, in der du die Iterationen mitzählen kannst. Diese müsste zudem bei jedem loop-Aufruf einmal auf ihren Zustand geprüft werden.
int iterations = 0;
void loop()
{
if (iterations >= 4) {
return;
}
++iterations;
// do something ...
}
Mit return wird die Funktion vorzeitig beendet. Intern würde sie daraufhin allerdings erneut aufgerufen werden. Alternativ könntest du schauen, ob du das Programm vorzeitig mit
exit(0);
beenden kannst oder eine Endlosschleife starten.
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
Computer, Arduino
mit schleifen lässt soetwas realisieren..
eine do..while-schleife oder sogar for-schleife..
https://www.arduino.cc/reference/de/language/structure/control-structure/dowhile/
oder wie der user regex9 geschrieben hatte mit returnö..