wUpper und wLower wird wohl den gleichen Wert haben, wenn du zwei mal hintereinander den gleichen Analog-Pin abfragst ...
//Calc Scale and Offset
AdScale[0] = (fUpper - fLower) / (wUpper - wLower);
Serial.println(AdScale[0]);
Serial.print("Scale = ");
//Print the result
Serial.print("Scale = ");
Serial.println(AdScale[0]); //Hier hat AdScale keinen Wert mehr
Oder willst du sagen, dass die Ausgabe so aussieht:
1.23
Scale = Scale =
und du in der ersten Zeile noch einen numerischen Wert hast,
in der zweiten, nach den zwei "Scale = " - Ausgaben aber nicht mehr ?
Das wäre sehr seltsam, stimmt.
Dieser while code wartest nur auf einer character in Serial buffer.
Bitte printen sie die werte des fLower and fUpper in ihren code um das zu sehn
Im Sinn:
Es sind wahrscheinlich noch nicht alle Zeichen über die serielle Schnitttstelle angekommen Die Übertragung braucht etwas Zeit. zB bei 9600 Baud sind 4 Byte nach ca 5 mS angekommen. Du liest sie schon aus bevor alle da sind.