Erklär bitte warum das in einen Interrupt soll? Das macht keinen Sinn. Ein Interrupt ist dazu da das regulär laufende Progrmm für eine kurze Aktion zu unterbrechen z.B. um auf Tastendrücke oder Impulse reagieren zu können. Wenn du deinen "Standby" im Interrupt machst ist dieser auch nicht unterbrechbar. Dein "Standby" gehört also in den loop. Warum nimmst du den Mess- und Ladezyklus raus? Entscheide dich ob du was machen willst oder nicht. So könnte das Ganze aussehen:
attachInterrupt(0, Fahrmodus, CHANGE );
loop()
{
while (fahrmodus == false && Zeit < 1h )
{-> Mach deinen Mess- und Ladezyklus}
while (fahrmodus == true )
{-> Mach das was du zum fahren brauchst}
}
Fahrmodus(){
if (PIN2 == LOW)
{Fahrmodus = false}
if (PIN2 == HIGH)
{Fahrmodus = true}