Wemos D1 Mini Frimware zur Steuerung einer RGBW-LED-Lampe
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

ConfigManager.cpp 918B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. /*
  2. * MemoryManager.cpp
  3. *
  4. * Created on: 21.06.2026
  5. * Author: FSmilari
  6. */
  7. #include "ConfigManager.h"
  8. ConfigManager::ConfigManager() {
  9. memset(&_config, 0, sizeof(Config));
  10. _config.wifiValid = false;
  11. }
  12. ConfigManager::~ConfigManager() {
  13. // TODO Auto-generated destructor stub
  14. }
  15. bool ConfigManager::loadConfig() {
  16. EEPROM.begin(sizeof(Config));
  17. EEPROM.get(0, _config);
  18. if (_config.wifiValid != true) {
  19. memset(&_config, 0, sizeof(Config));
  20. _config.wifiValid = false;
  21. return false;
  22. }
  23. return true;
  24. }
  25. bool ConfigManager::saveConfig(const Config &config) {
  26. _config = config;
  27. EEPROM.begin(sizeof(Config));
  28. EEPROM.put(0, _config);
  29. return EEPROM.commit();
  30. }
  31. void ConfigManager::resetConfig() {
  32. memset(&_config, 0, sizeof(Config));
  33. _config.wifiValid = false;
  34. EEPROM.begin(sizeof(Config));
  35. EEPROM.put(0, _config);
  36. EEPROM.commit();
  37. }
  38. Config& ConfigManager::getConfig() {
  39. return _config;
  40. }