Zwei StateMachine.
Nicht mehr und nicht weniger.
ABER!
Du hast sowas drin:
if (results.value == 16724175)
{
if (voltage < 1.6)
{
digitalWrite (8, HIGH);
Serial.println ("Auf vorne");
delay(500);
irrecv.resume();
}
}
}
if (results.value == 16724175)
{
if (voltage1 < 1.6)
{
digitalWrite (7, HIGH);
Serial.println ("Auf hinten");
delay(500);
irrecv.resume();
}
}
if (voltage > 1.6)
{
Serial.println ("OK vorne");
digitalWrite(8, LOW);
delay(500);
}
if (voltage1 > 1.6)
{
Serial.println ("OK hinten");
digitalWrite(7, LOW);
delay(500);
}
Das wird nischt.
Du fragst zweimal auf 16724175 ab - allerdings ist das Erste noch nach der Abfrage, ob überhaupt Daten vorhanden sind.
Das zweite Mal ist .resume() schon gelaufen.
Und Du trennst die Aktionen nicht sauber.
Und spätestens hier:
if (results.value == 16738455)
{
if (voltage > 1.6)
{
digitalWrite (9, HIGH);
Serial.println ("Ab vorne");
delay(500);
irrecv.resume();
}
if (voltage < 0.3)
{
Serial.println (voltage);
digitalWrite(9, LOW);
delay(500);
}
if (results.value == 16738455)
ist Schluß.
Wenn Du das mit Tasten schon mal hattest, dann würde ich mich darüber sehr freuen es zu sehen.
Und ja, dann bau ich dazu was.