Kann mir jemand diesen Ausschnitt Queltext von Arduino erklären?
void loop( ) {
if (digitalRead(buttonPin) == LOW) {
myTimer = millis( );
}
if (millis( ) - myTimer < ( 30000) ) { // 30 Sekunden
digitalWrite(ledPins[ 0 ], ((millis( ) - myTimer) % 1000) > 500);
} else if (millis( ) - myTimer < ( 60000) ) { // 60 Sekunden
digitalWrite(ledPins[ 1 ], ((millis( ) - myTimer) % 1000) > 500);
} else if (millis( ) - myTimer < ( 90000) ) { // 90 Sekunden
digitalWrite(ledPins[ 2 ], ((millis( ) - myTimer) % 1000) > 500);
} else if (millis( ) - myTimer < ( 120000) ) { // 120 Sekunden
digitalWrite(ledPins[ 3 ], ((millis( ) - myTimer) % 1000) > 500);
} else if (millis( ) - myTimer < ( 150000) ) { // 150 Sekunden
digitalWrite(ledPins[ 4 ], ((millis( ) - myTimer) % 1000) > 500);
} else if (millis( ) - myTimer < ( 180000) ) { // 180 Sekunden
digitalWrite(ledPins[ 5 ], ( (millis( ) - myTimer) % 1000) > 500);
} else if (millis( ) - myTimer < ( 190000) ) { // nach 180 Sekunden
for (int i = 0; i < 6; i++) {
digitalWrite(ledPins[ i ], ( (millis( ) - myTimer) % 1000) < 500);
1 Antwort
So kann man es besser lesen:
void loop( ) {
if (digitalRead(buttonPin) == LOW) {
myTimer = millis( );
}
if (millis( ) - myTimer < ( 30000) ) {
// 30 Sekunden
digitalWrite(ledPins[ 0 ], ((millis( ) - myTimer) % 1000) > 500);
}
else if (millis( ) - myTimer < ( 60000) ) {
// 60 Sekunden
digitalWrite(ledPins[ 1 ], ((millis( ) - myTimer) % 1000) > 500);
}
else if (millis( ) - myTimer < ( 90000) ) {
// 90 Sekunden
digitalWrite(ledPins[ 2 ], ((millis( ) - myTimer) % 1000) > 500);
}
else if (millis( ) - myTimer < ( 120000) ) {
// 120 Sekunden
digitalWrite(ledPins[ 3 ], ((millis( ) - myTimer) % 1000) > 500);
}
else if (millis( ) - myTimer < ( 150000) ) {
// 150 Sekunden
digitalWrite(ledPins[ 4 ], ((millis( ) - myTimer) % 1000) > 500);
}
else if (millis( ) - myTimer < ( 180000) ) {
// 180 Sekunden
digitalWrite(ledPins[ 5 ], ( (millis( ) - myTimer) % 1000) > 500);
}
else if (millis( ) - myTimer < ( 190000) ) {
// nach 180 Sekunden
for (int i = 0; i < 6; i++) {
digitalWrite(ledPins[ i ], ( (millis( ) - myTimer) % 1000) < 500);
Dann müsste noch kommen:
}
}
}
Meine Antwort kommt extra.