Ist zwar nicht meine Sprache, hoffe aber die Regeln gelten hier auch:
zu 1.
Die Schleife wird schon durchlaufen, du deklarierst aber die Variable innerhalb des IF/ELSE Blockes und deshalb ist Sie auch nur dort sichtbar.
Besser:
Code:
String DisplFeld3; // Deklaration der Variable außerhalb des if-else-Blocks
if (Ishunt < 1.0) { // wenn Wert < 1,0A ist, [mA]-Anzeige
DisplFeld3 = "3 " + String(IshuntMA, 1) + "mA";
...
Dadurch ist DisplFeld3 auch außerhalb des Blocks verfügbar und die Fehlermeldung sollte verschwinden.
zu 2.
Du erzeugst innerhalb des IF/ELSE Blockes eine neue lokale Variable, welche nur dort lokal verfügbar ist, Du greifst nicht auf die zuerst Deklarierte zu.
Lasse bitte die Typendeklaration "STRING" weg
(rot markiert weglassen)
Code:
String DisplFeld3 = "3 test"; // TESTzeile
if (Ishunt < 1.0) {
String DisplFeld3 = "3 " + String(IshuntMA, 1) + "mA"; // Kein "String" davor
...
Gruß André
Lesezeichen