Tak, używam metody cfg->getInt8("moja_zm_1", &zmienna); chyba że źle interpretuje pliki źródłowe
Code: Select all
#include <Arduino.h>
#include <SuplaDevice.h>
#include <supla/storage/littlefs_config.h>
#include <supla/control/action_trigger.h>
#include <supla/control/button.h>
#include <supla/storage/eeprom.h>
#define STORAGE_OFFSET 512
Supla::Eeprom eeprom(STORAGE_OFFSET);
Supla::LittleFsConfig configSupla(2048);
#define BUTTON_PIN 4
auto switch1 = new Supla::Control::Button(BUTTON_PIN, true, true);
bool flaga{false};
int8_t zmienna = 1;
auto cfg = Supla::Storage::ConfigInstance();
enum default_actions { BUTTON1_CLICK1 };
class addedActionsClass : public Supla::ActionHandler, public Supla::Element {
public:
addedActionsClass() {}
void handleAction(int event, int action) { // obsluga przyciskow z Supli
if (action == BUTTON1_CLICK1) {
printf("Klik x1 \n");
flaga = true;
}
}
};
addedActionsClass *custAct = new addedActionsClass();
void setup() {
Serial.begin(115200);
Supla::Storage::Init();
switch1->setMulticlickTime(500, false);
switch1->addAction(BUTTON1_CLICK1, custAct, Supla::ON_CLICK_1);
cfg->getInt8("moja_zm_1", &zmienna);
if(zmienna == 3){
Serial.print("EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEprom: ");
Serial.println(zmienna);
}
SuplaDevice.begin();
}
void loop() {
if(flaga) {
printf("zapis do eeprom \n");
flaga= false;
zmienna = 3;
Serial.println(zmienna);
cfg->setInt8("moja_zm_1", zmienna);
cfg->saveWithDelay(200);
}
}
