Das war der entscheidende Hinweis ardubu. Im Prinzip ist es eine Ausschaltverzögerung.
ich habe es soweit geändert. Immerhin leuchtet die LED bei Statusänderung und geht wieder aus... alles
OK soweit. Allerdings bleibt die LED nicht immer gleich lang an, mal 3 Sekunden und mal 8 Sekunden, mal 10 Sekunden. Ich weis nicht woran es liegt. Falls Ihr das ganze Programm braucht kann ich es posten, allerdings ist es noch nicht ganz fertig, möchte erst die einzelnen Funktionen haben.
In Kurzform sieht es so aus:
unsigned long ausZeit = 10000; // (10 Sekunden)
etc.
void loop()
{
HGBLaus(); // Unterprogramm zum LED ausschalten
if Zähler = n1
Status = sowieso1 Text auf LCD schreiben
HGBLan(); //Hintergrundbeleuchtung an
if Zähler = n2 Text auf LCD schreiben
Status = sowieso2
HGBLan(); //Hintergrundbeleuchtung an
usw.
void HGBLan() // Unter"programm" LED an
{
digitalWrite(HBL,HIGH); // LED ein.
}
void HGBLaus() // Unterprogramm LED aus
{
unsigned long currentMillis = millis();
if (currentMillis - previousMillis >= ausZeit) {
previousMillis = currentMillis;
digitalWrite(HBL,LOW);
}
}