ich plane eine Ablaufsteuerung mit verschiedenen Zuständen.
Bei jeder Zustandsänderung soll für ca. eine Sekunde ein Ausgang auf HIGH gehen, zwei
andere Ausgänge bleiben in dem gesetzten Status.
Gleichzeitig sollen mehrere Taster abgefragt werden welche die Zustandsänderung auslösen.
Bei meiner jetzigen Methode fragt der Arduino ja in der 1sek nicht die Taster ab.
Gibt es eine gute Lösung mit Interrupts?
Jetziger Zustand
case 1:
digitalWrite(led_rot, HIGH);
digitalWrite(led_gelb, HIGH);
digitalWrite(led_gruen, HIGH);
delay(1000);
digitalWrite(led_gruen, LOW);
zustand = 1;
break;
case 2:
digitalWrite(led_rot, HIGH);
digitalWrite(led_gelb, HIGH);
break;


vor 25 weeks 5 days
Du darfst kein Delay verwenden. Das blockiert den Arduino für die angegebene Zeit.
Du mußt Millis() verwenden. siehe Beispiel blinkwitoutdelay.
http://www.arduino.cc/en/Tutorial/BlinkWithoutDelay
Grüße Uwe
Login or register to post comments