Naja, readStringUntil('\n') liesst alle Zeichen bis '\n'. Da dies als Trennzeichen gewertet wird, wird es nicht in den Rückgabestring geschrieben.
Naja, readStringUntil('\n') liesst alle Zeichen bis '\n'. Da dies als Trennzeichen gewertet wird, wird es nicht in den Rückgabestring geschrieben.
Ich habe das Problem nun folgendermaßen behoben:
Blinken = Serial2.readStringUntil('\n');.....ersetzt durch.....Blinken = Serial2.readStringUntil('\r');
und
if (Blinken == "ja").....ersetzt durch.....if (Blinken.substring(1) == "ja").....da wird dann das erste Zeichen nicht mitgenommen.
Danke für eure Hilfen
Gruß
fredyxx
Damit liest du erst ab der zweiten 'ja'-Nachricht. Die erste wird ignoriert.
Mach besser sowas:
Damit löscht du das '\r' in der Nachricht, falls es vorkommt.Code:if (Serial.available()) { str = Serial.readStringUntil('\n'); str.replace("\r", "\0"); }
Geändert von Sisor (03.01.2017 um 12:33 Uhr)
Danke, das sind wohl die Feinheiten, die man Erfahrung nennt!!
Lesezeichen