# include "IRremote.h"
int EmpfaengerPin = 11;
void setup() {
Serial.begin(9600);
// auf serielle Verbindung warten
while (!Serial) { ; }
// 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: