Hallo liebe Community Ich habe eine Frage bezüglich des Arduino. Ich habe nun folgenden Sketch programmiert, der die drei LED Streifen blinken lässt. Hier ist der Code: int switchState = 0; void setup() { pinMode(3,OUTPUT); pinMode(2,INPUT); } void loop() { switchState = digitalRead(2); if(switchState == LOW) { // Der Schalter wird nicht gedrückt. digitalWrite(3, LOW); // alle drei LED-Streifen } else { // Der Schalter wird gedrückt. digitalWrite(3, HIGH); delay(20); digitalWrite(3, HIGH); digitalWrite(3, LOW); delay(100); delay(600); } } Jetzt möchte ich noch einen Modi mehr "einbauen", den man über einen weiteren Drucktaster starten kann, der aber, genau wie beim Code oben, alle drei LED Streifen blinken lässt. Also wenn ich den ersten Schalter drücke, wird Modi 1 (langsam blinken) gestartet, wenn ich den zweiten Schalter drücke, kommt Modi 2 (schnelles blinken) zum Einsatz. Nun meine Frage: Wie muss ich das genau programmieren? Oder wie kann ich einen zweiten Schalter ansprechen? Bitte nur Hinweise, da ich anschließend die Lösung selber herausfinden möchte. Vielen Dank! Mit freundlichen Grüssen Gabriel
Hallo Sketch erweitern um 1. Taster Wenn Taster 1 = 1 langsam blinken Wenn Taster 2 = 1 schnell blinken Lg
Bin ehrlich gesagt gerade ein bisschen überfordert. Könntest du mir die "Lösung" ohne die Hinweise geben? Vielen Dank! lg
Versuch mal int switchStateT1 = 0; int switchStateT2 = 0; void setup() { pinMode(3,OUTPUT); pinMode(2,INPUT); pinMode(4,INPUT); } void loop() { switchStateT1 = digitalRead(2); switchStateT2 = digitalRead(4); if(switchStateT1 == HIGH) { // Der Schalter wird nicht gedrückt. digitalWrite(3, HIGH); delay(2000); digitalWrite(3, LOW); } if(switchStateT1 == HIGH) { // Der Schalter wird nicht gedrückt. digitalWrite(3, HIGH); delay(1000); digitalWrite(3, LOW); } else { // Der Schalter wird gedrückt. digitalWrite(3, LOW); } } Taster an Pin 4 die delay kannst du dann selbst setzen
Bau doch erst mal einen 2ten Taster ein. Und wenn das geht, muss man den aktuellen Modis speichern. Was ist das Problem für einen zweiten Taster switchState2 = digitalRead( <wo auch immer der 2te Taster angeschlossen ist>); einzubauen?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.