infrared remote

This commit is contained in:
Patrick Haßel 2025-03-13 16:01:57 +01:00
parent a09710fa4b
commit e984ffa46b
4 changed files with 43 additions and 1 deletions

View File

@ -4,6 +4,7 @@ board = esp32dev
framework = arduino
board_build.filesystem = littlefs
lib_deps = https://github.com/adafruit/Adafruit_NeoPixel
https://github.com/Arduino-IRremote/Arduino-IRremote
upload_port = /dev/ttyUSB0
upload_speed = 460800
monitor_speed = 115200

View File

@ -3,15 +3,17 @@
#include "buzzer.h"
#include "countdown.h"
#include "display.h"
#include "remote.h"
void setup() {
delay(500);
Serial.begin(115200);
Serial.println("\n\n\nstartup");
Serial.println("\n\n\nStartup");
beeperSetup();
buttonSetup();
buzzerSetup();
remoteSetup();
displaySetup();
@ -21,5 +23,6 @@ void setup() {
void loop() {
beeperLoop();
buttonLoop();
remoteLoop();
countdownLoop();
}

30
src/remote.cpp Normal file
View File

@ -0,0 +1,30 @@
#include "remote.h"
#include <IRremote.hpp>
void remoteSetup() {
IrReceiver.begin(21);
}
void remoteLoop() {
if (IrReceiver.decode()) {
Serial.println("--------------------------------------------------------------");
IrReceiver.printIRResultShort(&Serial);
if (IrReceiver.decodedIRData.flags & IRDATA_FLAGS_WAS_OVERFLOW) {
Serial.println("OVERFLOW");
} else {
Serial.println(getProtocolString(IrReceiver.decodedIRData.protocol));
IrReceiver.printIRSendUsage(&Serial);
IrReceiver.printIRResultRawFormatted(&Serial, false);
IrReceiver.printIRResultRawFormatted(&Serial, true);
IrReceiver.compensateAndPrintIRResultAsCArray(&Serial, false);
IrReceiver.compensateAndPrintIRResultAsCArray(&Serial, true);
IrReceiver.printIRResultAsCVariables(&Serial);
IrReceiver.compensateAndPrintIRResultAsPronto(&Serial);
}
IrReceiver.resume();
Serial.println("--------------------------------------------------------------");
Serial.println();
Serial.println();
}
}

8
src/remote.h Normal file
View File

@ -0,0 +1,8 @@
#ifndef REMOTE_H
#define REMOTE_H
void remoteSetup();
void remoteLoop();
#endif