wie kann ich mein code so umändern dass mein schrittmotor erst dann anfängt zum drehen wenn in meine lichtschranke licht abgebrochen wird und dann soll es so viele schritte machen und dann nach 10sek zurück #include <Stepper.h>
const int stepsPerRevolution = 32;
Stepper myStepper(stepsPerRevolution, 8, 10, 9, 11);
unsigned long previousMillis = 0;
const long interval = 1000;
bool motorActive = false;
bool motorReturning = false;
void setup() {
pinMode(A0, INPUT);
Serial.begin(9600);
}
void loop() {
myStepper.setSpeed(900);
int sensorValue = digitalRead(A0);
unsigned long currentMillis = millis();
Serial.print("A0 state: ");
Serial.println(sensorValue);
delay(500);
if (sensorValue == LOW && !motorActive && !motorReturning) {
myStepper.step(2048);
previousMillis = currentMillis;
motorActive = true;
}
if (motorActive && (currentMillis - previousMillis >= interval)) {
myStepper.step(-2048);
motorActive = false;
motorReturning = true;
}
}