Diese Beschreibung erstellt die Serie.ReadByTesuntil () Funktion eingehend. Wir werden diskutieren, was es ist, wie es funktioniert, und den Arduino -Code abdecken, der erklärt, wie man ihn in Arduino Code verwendet.
Serie.ReadByTesuntil ()
Die Serie.ReadByTesuntil () -Funktion ist ein Teil der Arduino -Serienklasse. Diese Funktion liest Daten aus einem Stream, bis ein bestimmtes Zeichen oder eine maximale Anzahl von Bytes findet. Sobald der Charakter oder die maximale Anzahl von Bytes gefunden wurden, wird die Funktion nicht mehr gelesen und gibt die gelesenen Daten zurück.
Die Serie.ReadByTesuntil () -Funktion endet, wenn die folgenden Bedingungen erfüllt sind:
Diese Funktion gibt das Terminator -Zeichen nicht zurück, das nur Daten auf das letzte Zeichen vor dem Terminator zurückgibt. Wenn 0 durch diese Funktion zurückgegeben wird, bedeutet dies, dass keine gültigen Daten gefunden werden.
Syntax
Die Serie.ReadByTesuntil () -Funktion hat die folgende Syntax:
Serie.readByTesuntil (char terminator, char* puffer, size_t länge);
Parameter
Im Folgenden finden Sie die Parameter der Funktionserie.ReadByTesuntil ():
Zurückkehren
Die Anzahl der in den Puffer platzierten Bytes.
Anmerkungen: Als Gegenleistung Daten wird das Terminator -Zeichen von der Funktionserie verworfen.ReadByTesuntil () aus dem Datenstrom.
Beispiel Arduino Code
Nach Arduino -Code Erklären Sie die Verwendung von Serie.ReadByTesuntil () Funktion:
void setup ()
Serie.Beginnen Sie (9600); // Initialisieren Sie die serielle Verbindung mit einer Baudrate von 9600
void Loop ()
Bytepuffer [5]; // Definieren Sie ein Byte -Array, um die eingehenden Daten zu speichern
int numbytes = serial.ReadByTesuntil ('\ n', Puffer, 5); // Eingehende Daten aus der seriellen Verbindung lesen, bis ein neuer Zeichenzeichen auftritt
if (numbytes> 0) // Überprüfen Sie, ob Bytes gelesen wurden
Serie.print ("empfangene Zeichen:");
Serie.Schreiben (Puffer, Numbytes); // Drucken Sie die empfangenen Daten in den seriellen Monitor
Serie.println ();
Im SetUp () -Function -Baud -Rate wird eine serielle Kommunikation festgelegt.
In der Loop () -Funktion definieren wir zunächst ein Byte -Array aufgerufen 'Puffer'. Dieses Array wird verwendet, um die eingehenden Daten aus der seriellen Verbindung zu speichern.
Als nächstes rufen wir das an Serie.ReadByTesuntil () Funktion, die eingehende Daten aus der seriellen Verbindung liest, bis sie auf ein neues Zeilenzeichen ('\ n') stößt ('\ n'). Das nächste Argument ist die Länge des Puffer.
Das zurückgegebene Byte wird in der gespeichert 'numbytes' Variable. Wenn die empfangenen Daten größer als die Pufferlänge sind, werden die Daten beendet und im nächsten Datenstrom gesendet.
Ausgang
Abschluss
Der Serie.ReadByTesuntil () Funktion in der Arduino -Programmierung liest Bytes aus einem seriellen Eingangsstrom, bis ein bestimmtes Terminator -Zeichen empfangen wird. Die Funktion gibt insgesamt Lesen und speichert sie in einem bereitgestellten Puffer. Lesen Sie den Artikel, um weitere Informationen zur Serie zu erhalten.ReadByTesuntil () Funktion.