Comments und add licence

This commit is contained in:
Carsten Graf
2025-07-12 17:39:45 +02:00
parent 585d2d7d5d
commit d10a8fef6d
11 changed files with 126 additions and 34 deletions

View File

@@ -4,7 +4,6 @@
#include <MFRC522.h>
#include <SPI.h>
// RFID Konfiguration
#define RST_PIN 21 // Configurable, see typical pin layout above
#define SS_PIN 5 // Configurable, see typical pin layout above
@@ -22,6 +21,7 @@ unsigned long rfidReadStartTime = 0;
const unsigned long RFID_READ_TIMEOUT =
10000; // 10 Sekunden Timeout für API Requests
// Initialisiert den RFID-Reader und das SPI-Interface.
void setupRFID() {
// SPI und RFID initialisieren
@@ -32,6 +32,8 @@ void setupRFID() {
// Reader details
}
// Liest automatisch eine RFID-Karte ein und blockiert die UID für eine
// bestimmte Zeit.
void handleAutomaticRFID() {
if (!mfrc522.PICC_IsNewCardPresent()) {
return;
@@ -83,6 +85,8 @@ void handleAutomaticRFID() {
}
// Neue Funktion für API-basiertes RFID Lesen
// Liest eine RFID-Karte im API-Modus ein (für Web-Requests).
void handleAPIRFIDRead() {
unsigned long currentTime = millis();
@@ -130,6 +134,8 @@ void handleAPIRFIDRead() {
}
// API Funktion: RFID Lesevorgang starten
// Startet einen neuen RFID-Lesevorgang über die API.
void startRFIDRead() {
Serial.println("RFID API Lesevorgang gestartet...");
rfidReadRequested = true;
@@ -139,14 +145,18 @@ void startRFIDRead() {
}
// API Funktion: Prüfen ob Lesevorgang abgeschlossen
// Prüft, ob der aktuelle RFID-Lesevorgang abgeschlossen ist.
bool isRFIDReadComplete() { return !rfidReadRequested; }
// API Funktion: Ergebnis des Lesevorgangs abrufen
// Gibt das Ergebnis des letzten RFID-Lesevorgangs zurück.
String getRFIDReadResult(bool &success) {
success = rfidReadSuccess;
return lastReadUID;
}
// Richtet die HTTP-API-Routen für RFID-Operationen ein.
void setupRFIDRoute(AsyncWebServer &server) {
server.on("/api/rfid/read", HTTP_GET, [](AsyncWebServerRequest *request) {
Serial.println("api/rfid/read");
@@ -240,6 +250,8 @@ void setupRFIDRoute(AsyncWebServer &server) {
}
// API Funktion: RFID Reader Status prüfen
// Prüft, ob der RFID-Reader korrekt funktioniert und gibt den Status zurück.
bool checkRFIDReaderStatus() {
byte version = mfrc522.PCD_ReadRegister(mfrc522.VersionReg);
@@ -255,6 +267,8 @@ bool checkRFIDReaderStatus() {
}
// Hilfsfunktion: Blockierte UIDs aufräumen
// Entfernt UIDs aus der Blockliste, deren Blockdauer abgelaufen ist.
void cleanupBlockedUIDs() {
unsigned long currentTime = millis();
@@ -268,6 +282,7 @@ void cleanupBlockedUIDs() {
}
}
// Hauptschleife für das RFID-Handling (automatisch und API-basiert).
void loopRFID() {
// Originale Funktionalität für automatisches Lesen
if (!rfidReadRequested) {