Der oben hinzugefügte Kodeausschnitt erscheint mir auf den ersten Blick unverdächtig.
//######################################################################
//#--- strukturierte Ausgabe auf LCD -Spalte, Zeile, Pointer, delay ---#
//######################################################################
void LCD_Ausgabe_String(int Sp, int Ze, char* Str, int T) {
lcd.setCursor(Sp, Ze);
lcd.print(Str); delay (T); //Schreibe Text in Spalte/Zeile
}
//######################################################################
//#---- strukturierte Ausgabe auf LCD -Spalte, Zeile, Zahl, delay -----#
//######################################################################
void LCD_Ausgabe_Zahl(int Sp, int Ze, int Zahl, int T) {
lcd.setCursor(Sp, Ze);
if (Zahl > 0) { //keine Ausgabe, wenn Null Std.
lcd.setCursor(Sp , Ze); // Spalte 12, Zeile 1
if (Zahl < 10000) {
lcd.print(" "); // ein leerzeichen wenn Zahl kleiner 4-stellig
}
if (Zahl < 1000) {
lcd.print(" "); // ein leerzeichen wenn Zahl kleiner 3-stellig
}
if (Zahl < 100) {
lcd.print(" "); // ein leerzeichen wenn Zahl kleiner 2-stellig
}
if (Zahl < 10) {
lcd.print(" "); // ein leerzeichen wenn Zahl kleiner 1-stellig
}
}
lcd.print(Zahl); delay (T); //Schreibe Zahl rechtsbündig in Spalte/Zeile
}
//######################################################################
//# ---- Z = Zeile | LM = Laufzeit (Std) | LS = Laufzeit (Sek)-------- #
//######################################################################
void LCD_Print(int Z, word LM, word LS, word LG) {
LCD_Aus00 = LCD_Aus0; //starte LCD_Backlight-Zyklus on
LCD_BACK_ON_OFF();
// Ausgabe der Stunden und Sekunden - Einschaltzeit
//Sekundenausgabe // max. 4 Stellen (sek / h)
//Stundenausgabe
if (LM > 0) { //keine Ausgabe, wenn Null Std.
lcd.setCursor(15, Z); lcd.print("h"); // Cursor Spalte letzte | Zeile
LG = LG / Stunde; //Laufzeit in Sekunden bis 3600
LCD_Ausgabe_String(BS_Col - 2, Z, G, 0); //Anzeige "Gesamt"
LCD_Ausgabe_Zahl(BS_Col, Z, LG, Anzeigezyklus); //Verzögerung der ersten Anzeige
LCD_Ausgabe_String(BS_Col - 2, Z, A, 0); //Anzeige "Aus"
LCD_Ausgabe_Zahl(BS_Col, Z, LM, Anzeigezyklus);
}
LCD_Ausgabe_String(BS_Col - 2, Z, A, 0); //Anzeige "Aus"
lcd.setCursor(15, Z); //Cursor Spalte letzte | Zeile
lcd.print("s"); //Laufzeit in Sekunden bis 3600
LCD_Ausgabe_Zahl(BS_Col, Z, LS, 0);
//Rückgabewerte
if (Z = 0) { // Pumpe 1 aktuallisieren
BS_Lauf_M1 = LM; BS_Lauf_S1 = LS;
}
if (Z = 1) { // Pumpe 2 aktuallisieren
BS_Lauf_M2 = LM; BS_Lauf_S2 = LS;
}
}
Ohne den Kontext (d.h. das gesamte Programm, evtl. mit Herkunft der verwendeten nicht-standard Libraries) nützt das nichts.
Bitte poste das vollständige Programm (in Kode Tags).
Wenn es zu fett dazu ist (das befürchte ich, wenn ich den Auschnitt betrachte),
hänge es an wie den Ausschnitt zuvor, aber in einem neuen Post.