Hi,
wie lösche ich den Buffer bei der seriellen KommunikATION?
mein Code sieht wie folgt aus:
String str;
void setup(){
Serial.begin(4800);
Serial1.begin(4800);
}
void loop()
{
Serial.print(STX);
Serial.print(Eins);
Serial.print(Acht);
Serial.print(Semi); //ist die Anforderung zum gerät den String zu senden
Serial.print(Semi);
Serial.print(D);
Serial.print(F);
Serial.print(ETX);
delay(10);
if(Serial1.available() > 0)
{
str = Serial1.readStringUntil('\r');
}
Serial1.print(str);
}
}
Der Buffer ist voll, da vor der Abfrage schon mehrmals etwas gesendet wurde... in dem Moment wo die Anforderung gesendet wird wird das gewünschte allerdings nur noch einmal gesendet.
Ich hänge im Moment an der Stelle, da ich nur den ersten Status als str ausgegeben bekomme... aber den bei der Abfrage dann nicht..
Oder hat jemand eine andere Idee ohne den Buffer?
MfG