const int sensor1 = 12; const int sensor2 = 11; const int driver1 = 10; const int driver2 = 9; const int startbutton = 8; long timer; int condition; void setup() { pinMode(sensor1, INPUT); pinMode(sensor2, INPUT); pinMode(driver1, OUTPUT); pinMode(driver2, OUTPUT); pinMode(startbutton, INPUT); timer = 0; condition = 0; } void loop() { if (condition == 0 && digitalRead(startbutton) == HIGH) { digitalWrite(driver1, HIGH); condition = 1; } if (condition == 1) { timer = 0; while (timer < 50000) { if (digitalRead(sensor1) == HIGH) { digitalWrite(driver1, LOW); digitalWrite(driver2, HIGH); timer = 50000; condition = 2; } delayMicroseconds(1); timer = timer + 1; } } if (condition == 1) { digitalWrite(driver1, LOW); conditi on = 0; timer = 0; } if (condition == 2) { timer = 0; while (timer < 50000) { if (digitalRead(sensor2) == HIGH) { digitalWrite(driver2, LOW); timer = 50000; condition = 0; } delayMicroseconds(1); timer = timer + 1; } } if (condition == 2) { digitalWrite(driver2, LOW); condition = 0; timer = 0; } }