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 | #include “IRremote.hpp” int EmpfaengerPin = 11; void setup() { Serial.begin(9600); // auf serielle Verbindung warten while (!Serial); delay(1000); // Empfänger starten IrReceiver.begin(EmpfaengerPin); } void ReiheAnzeigen(int Zahl) { Serial.print(“Einmaleins der ”); Serial.println(Zahl); for (int i = 1; i <= 10; i++) { Serial.print(i); Serial.print(“ * ”); Serial.print(Zahl); Serial.print(“ = ”); Serial.print(i * Zahl); Serial.println(); } Serial.println(“———————–”); } void loop() { // Daten lesen if (IrReceiver.decode()) { // kurzes delay, damit nur eine Taste gelesen wird delay(200); // nächsten Wert lesen IrReceiver.resume(); /* es sollen nur die korrekt erkannten Tasten ausgewertet werden die Dezimalwerte der korrekten Tasten liegen zwischen > 0 und < 95 */ if (IrReceiver.decodedIRData.command > 0 && IrReceiver.decodedIRData.command < 95) { // wenn die Werte der Tasten nicht bekannt sind: // vor den nächsten Zeilen entfernen // Serial.print(“Dezimalwert: ”); // Serial.print(IrReceiver.decodedIRData.command); // Serial.println(); // je nach Wert Zahl an die Funktion ReiheAnzeigen() übergeben switch (IrReceiver.decodedIRData.command) { // Taste 1 case 22: ReiheAnzeigen(1); break; // Taste 2 case 25: ReiheAnzeigen(2); break; // Taste 3 case 13: ReiheAnzeigen(3); break; // Taste 4 case 12: ReiheAnzeigen(4); break; // Taste 5 case 24: ReiheAnzeigen(5); break; // Taste 6 case 94: ReiheAnzeigen(6); break; // Taste 7 case 8: ReiheAnzeigen(7); break; // Taste 8 case 28: ReiheAnzeigen(8); break; // Taste 9 case 90: ReiheAnzeigen(9); break; default: break; } } } } |
Letzte Aktualisierung: