(deleted)
bool Stromparmodus; // Statusvariable Sparmodus an / aus
...
if (!digitalRead(Taster1)&& (Stromparmodus ==1))
{
aufwachen;
Stromparmodus =0;
}
if (!digitalRead(Taster1)&& (Stromparmodus ==0))
{
Tasterfunktion; // was alles eine Tastenbetätigung machen soll.
}
Grüße Uwe
Sollte man wohl noch um eine Flankenerkennung+Entprellen von Taster1 ergänzen...
Außerdem sollte man entsprechende Funktionen (?) aufrufen, statt sie nur zu erwähnen:
bool Stromparmodus; // Statusvariable Sparmodus an / aus
void loop() {
...
static bool tastenZustand1; // zur Flankenerkennung : true = gedrückt
bool neueTaste = false; // nur einmal true bei Neubetätigung
if (digitalRead(Taster1) != tastenZustand1) {
neueTaste = tastenZustand1 = !tastenZustand1;
delay(5); // Entprellen
if (neueTaste && (Stromparmodus ==1))
{
aufwachen(); // Alles was beim Aufwachen erledigt werden soll, ausführen
Stromparmodus =0;
}
...
}
Taster einlesen ist ziemlich kompliziert : )
while (!digitalRead(Taster1)) {}
Das blockiert alles, wenn Taster1 nicht(?!) gedrückt ist. Als Flankenerkennung suboptimal ![]()
(deleted)