Ashampoo_Snap_2020.09.02_09h28m44s_009_

Infra red ontvanger

// Importeer de IR-remote bibliotheek
#include

int IrReceiverPin = 12; // stel de variable “IrReceiverPin” in op pin 12
IRrecv irrecv(IrReceiverPin); // maak een nieuwe instantie van “irrecv” en sla deze op in de variabele “IRrecv”
decode_results results; // definieer de variable “results” om de ontvangen knop-code in op te slaan

int speed = 100;

void setup()
{
Serial.begin(9600); // Stel de seriële monitor in

pinMode(LED_BUILTIN, OUTPUT); // Initialiseer digitale pin LED_BUILTIN als een uitvoer

// In case the interrupt driver crashes on setup, give a clue
// to the user what’s going on.

// Mocht de IR-remote bibliotheek vastlopen dan kunnen we dit aan de getoonde tekst zien
Serial.println(“IR-ontvanger wordt gestart…”);
irrecv.enableIRIn(); // start de IR-ontvanger
Serial.println(“IR-ontvanger actief”);

digitalWrite(LED_BUILTIN, LOW); // Zet de ingebouwde LED uit
}

void loop() {

// Als de IR-ontvanger een signaal heeft ontvangen
if (irrecv.decode(&results)) {

// Print de ontvangen waarde als hexadecimaal
Serial.println(results.value, HEX);

// Laat de IR-ontvanger luisteren naar nieuwe signalen
irrecv.resume();

// Bepaal welke knop is ingedrukt
switch (results.value) {
case 0xFF30CF: // knop 1
speed = 100; // stel de snelheid in op 100ms
break;

case 0xFF18E7: // knop 2
speed = 500; // stel de snelheid in op 500ms
break;

case 0xFF7A85: // knop 3
speed = 1000; // stel de snelheid in op 1000ms
break;
}

}

Comments are closed.