Repository navigation
Expand file tree
/
Copy pathHardwareConfig.cpp
More file actions
56 lines (50 loc) · 2.69 KB
/
Copy pathHardwareConfig.cpp
File metadata and controls
56 lines (50 loc) · 2.69 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include "HardwareConfig.hpp"
// Die Funktionen hier implementieren.
void loadHardwareConfig() {
if (!hardwareConfig) return; // Sicherheitsabfrage
if (LittleFS.exists("/hardware.json")) {
File configFile = LittleFS.open("/hardware.json", "r");
JsonDocument doc;
if (deserializeJson(doc, configFile) == DeserializationError::Ok) {
hardwareConfig->R1 = doc["R1"] | hardwareConfig->R1;
hardwareConfig->G1 = doc["G1"] | hardwareConfig->G1;
hardwareConfig->B1 = doc["B1"] | hardwareConfig->B1;
hardwareConfig->R2 = doc["R2"] | hardwareConfig->R2;
hardwareConfig->G2 = doc["G2"] | hardwareConfig->G2;
hardwareConfig->B2 = doc["B2"] | hardwareConfig->B2;
hardwareConfig->A = doc["A"] | hardwareConfig->A;
hardwareConfig->B = doc["B"] | hardwareConfig->B;
hardwareConfig->C = doc["C"] | hardwareConfig->C;
hardwareConfig->D = doc["D"] | hardwareConfig->D;
hardwareConfig->E = doc["E"] | hardwareConfig->E;
hardwareConfig->CLK = doc["CLK"] | hardwareConfig->CLK;
hardwareConfig->LAT = doc["LAT"] | hardwareConfig->LAT;
hardwareConfig->OE = doc["OE"] | hardwareConfig->OE;
hardwareConfig->mwaveRxPin = doc["mwaveRxPin"] | hardwareConfig->mwaveRxPin;
hardwareConfig->mwaveTxPin = doc["mwaveTxPin"] | hardwareConfig->mwaveTxPin;
hardwareConfig->displayRelayPin = doc["displayRelayPin"] | hardwareConfig->displayRelayPin;
Serial.println("Hardware-Konfiguration aus hardware.json geladen.");
}
configFile.close();
} else {
Serial.println("Keine hardware.json gefunden, verwende Standard-Pinbelegung.");
}
}
void saveHardwareConfig() {
if (!hardwareConfig) return; // Sicherheitsabfrage
JsonDocument doc;
doc["R1"] = hardwareConfig->R1; doc["G1"] = hardwareConfig->G1; doc["B1"] = hardwareConfig->B1;
doc["R2"] = hardwareConfig->R2; doc["G2"] = hardwareConfig->G2; doc["B2"] = hardwareConfig->B2;
doc["A"] = hardwareConfig->A; doc["B"] = hardwareConfig->B; doc["C"] = hardwareConfig->C;
doc["D"] = hardwareConfig->D; doc["E"] = hardwareConfig->E;
doc["CLK"] = hardwareConfig->CLK; doc["LAT"] = hardwareConfig->LAT; doc["OE"] = hardwareConfig->OE;
doc["mwaveRxPin"] = hardwareConfig->mwaveRxPin;
doc["mwaveTxPin"] = hardwareConfig->mwaveTxPin;
doc["displayRelayPin"] = hardwareConfig->displayRelayPin;
File configFile = LittleFS.open("/hardware.json", "w");
if (configFile) {
serializeJson(doc, configFile);
configFile.close();
Serial.println("Hardware-Konfiguration gespeichert.");
}
}