|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 |
// Array für die LEDs int LED[5] = {3, 4, 5, 6, 7}; /* Array für den Zustand der LEDs false = ausgeschaltet */ bool Status[5] = {false, false, false, false, false}; int Taster; int Analogwert; int Tasterabfrage() { Analogwert = analogRead(A0); delay(200); Serial.println(Analogwert); /* A0 gibt je nach gedrückten Taster einen Wert aus über den Seriellen Monitor wird dieser Wert angezeigt und kann dann eventuell angepasst werden die Zeile Serial.println ... kann dann gelöscht werden Taster 1 ⇒ links Taster 2 ⇒ oben Mitte Taster 3 ⇒ unten Mitte Taster 4 ⇒ rechts Taster 5 ⇒ außen */ switch (Analogwert) { case 0 ... 20: Taster = 1; break; case 30 ... 60: Taster = 2; break; case 70 ... 120: Taster = 3; break; case 150 ... 200: Taster = 4; break; case 300 ... 400: Taster = 5; break; default: return 0; } // gedrückten Taster zurückgeben return Taster; } void setup() { for (int i = 0; i <= 4; i++) { pinMode(LED[i], OUTPUT); } Serial.begin(9600); } void loop() { Taster = Tasterabfrage(); // Taster links if (Taster == 1) { /* gelbe LED Pin 7, LED[4] Status[4] Status umdrehen, aus true wird false aus false wird true */ Status[4] = !Status[4]; digitalWrite(LED[4], Status[4]); } // Taster oben Mitte if (Taster == 2) { // blaue LED Pin 6, LED[3] Status[3] Status[3] = !Status[3]; digitalWrite(LED[3], Status[3]); } // Taster unten Mitte if (Taster == 3) { // rote LED Pin 5, LED[2] Status[2] Status[2] = !Status[2]; digitalWrite(LED[2], Status[2]); } // Taster rechts if (Taster == 4) { // weiße LED Pin 4, LED[1] Status[1] Status[1] = !Status[1]; digitalWrite(LED[1], Status[1]); } // Taster rechts außen if (Taster == 3) { // grüne LED Pin 3, LED[0] Status[0] Status[0] = !Status[0]; digitalWrite(LED[0], Status[0]); } } |
Letzte Aktualisierung: