Hey Leute
Ich will mein ESP32 DevKit per Tastendruck (Enter und Escape gleichzeitig) neustarten lassen.
Bei mir startet der ESP aber direkt neu, egal ob dieser in einer if-bedingung ist.
int escButton = 25;
int enterButton = 26;
int enterState = 0;
int enterStateold = 0;
int escState = 0;
int escStateold = 0;
//setup
pinMode(enterButton, INPUT_PULLUP);
pinMode(escButton, INPUT_PULLUP);
//loop:
enterState = digitalRead(enterButton);
escState = digitalRead(escButton);
if (escStateold == LOW && escState == HIGH && enterStateold == LOW && enterState == HIGH) { //Reset wenn Enter und Esc gedrückt wird
ESP.restart();
}
escStateold = escState;
enterStateold = enterState;
wennst eh schon den Umweg über eine Zwischenvariable machst, warum negierst du dann nicht einfach das gelesene Ergebnis und fährst den Code "natürlich-sprachlich" LOW/HIGH?
Außerdem, checke mal welche Variablen du const machen kannst und
welche Variablen-Typen du wirklich brauchst. Es gibt nicht nur int! oft reicht bool oder byte schon!