Zitat Zitat von Schiffe Bodo Beitrag anzeigen
...
while((S1)==LOW); } // Warten bis zum neuen Programmstart
}
}

Soweit alles gut.
Nein. Nicht ganz. Viel besser, aber das ende stimmt noch nicht. Die Bedingung von der while-schleife macht immer noch keinen Sinn. S1 ist 4, und LOW ist den Wert 0, also wird diese Vergleichung immer falsch.

Wie kann ich die LED nur dann zum blinken bringen wenn der Kran sich bewegt?
Du verbindest gleich von Anfang ab in setup() den callback Funktion an den Timer1 Interrupt. Dann blinkt sie doch auch gleich wann Arduino auf-startet? Wieso das nicht nur machen auf das moment das den Kran anfangen soll sich zu bewegen? Und es gibt auch noch ein Funktion detachInterrupt womit das blinken gestoppt werden kann wenn nötig.
https://www.arduino.cc/en/Reference/DetachInterrupt


Nochmals vielen Dank, besonders an Valen, für eure Hilfe.
Gerne gemacht.