Das Posten der Definition der Variablen und des setup kann ich verzichten, oder ist das auch von Bedeutung?
void loop()
{
unsigned long currentMillis = millis();
if (modus == 1 && einaus == 1)
{
if (endlageValue==0)
{
if (currentMillis - previousMillis > Dauer )
{
Schritt++; // nächster Schritt
switch (Schritt)
{
case 1:
analogWrite(motoreinaus, 255);// Motor - Leistung 100%
digitalWrite(rechtslauf, LOW);// Motor - Rechtslauf aus
digitalWrite(linkslauf, HIGH);// Motor - Linkslauf ein
digitalWrite(led4, LOW);
Dauer = 1000; // sec warten
break;
case 2:
analogWrite(motoreinaus, 127);// Motor - Leistung 50%
digitalWrite(led2, HIGH);
Dauer =1000; // Pause zeit 2
break;
case 3:
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
analogWrite(ein, 255); // Motor - Leistung 100%
Dauer = 1000;
break;
case 4:
digitalWrite(led3, LOW);
digitalWrite(linkslauf, LOW);// Motor - Linkslauf aus
digitalWrite(motoreinaus, LOW);// Motor Aus
digitalWrite(led4, HIGH);
Dauer=1000;
break;
default:
Schritt = 0;
Dauer = 1; // Schrittfolge wieder von vorn
}
previousMillis = currentMillis; // "Delay" neu starten
} // if (currentMillis - previousMillis > Dauer )
} // if (endlageValue==0)
} // if (modus == 1)
} // loop-Ende