knxdisplay/main/KnxWorker.hpp
2026-01-22 21:32:21 +01:00

31 lines
852 B
C++

#pragma once
#include <cstdint>
#include <cstddef>
// KNX Group Object Info für Web-API
struct KnxGroupObjectInfo {
uint16_t goIndex; // Group Object Index (1-based)
uint16_t groupAddress; // Gruppenadresse (z.B. 1/2/3 = 0x0A03)
uint8_t dptMain; // DPT Haupttyp
uint8_t dptSub; // DPT Subtyp
bool commFlag; // Kommunikations-Flag
bool readFlag; // Lese-Flag
bool writeFlag; // Schreib-Flag
};
class KnxWorker {
public:
KnxWorker();
void init();
void toggleProgMode();
void loop();
// KNX Gruppenadressen auslesen
size_t getGroupObjectCount();
bool getGroupObjectInfo(size_t index, KnxGroupObjectInfo& info);
// Gruppenadresse als String formatieren (z.B. "1/2/3")
static void formatGroupAddress(uint16_t addr, char* buf, size_t bufSize);
};