alles klar, so gehts mir zur Zeit mit anderen Dingen auch 
- - - Aktualisiert - - -
ps:
zu deinem Code
Code:
if (x == NAN)
{
Serial.println("Mist");
}
Du kannst nicht x mit NAN vergleichen, NAN ist kein gültiger numerischer Wert.
Dass du nan auf dem Screen hast, ist die Folge dessen, dass du an Serial.print einen Wert übergibst, der als ungültig definiert ist, und daher gibt print von sich aus nan aus.
Daher kannst du auch mit if() keine Abfrage machen wie beim Exception-Handling mit try...catch - du musst die Exceptions von dir aus selber, manuell behandeln, wie schon von Sisor angedeutet
Ich würde floats ggf. mit isnan() oder isinf() testen.
d.h. z.B. versuchen per
Code:
if (isnan(x))
{
Serial.println("Mist");
}
, oder versuchen, per Flag die C++ Exceptions einzuschalten,
oder die gültigen/ungültigen Bereiche vorher auszuschließen, wie ich es getan habe..
Lesezeichen