Serial.readBytesUntil()

Description

Cette fonction lit les caractères d'un port série et les place dans une variable de stockage (buffer). La fonction s'arrête:

  • Si le caractère de fin a été trouvé,
  • Si la longueur de chaîne voulue (c'est à dire le nombre de caractères voulu) a été lu,
  • Ou si le temps limite est écoulé. Voir la fonction Serial.setTimeout().

Cette fonction renvoie le nombre de caractères qui ont été stockés dans la variable buffer. 0 signifie qu'aucune donnée valide n'a été trouvée.

Syntaxe

Serial.readBytesUntil(character, buffer, length)

Paramètres

  • Serial: tout objet d'une classe utilisant la classe Serial
  • character: le caractère de fin à rechercher (char)
  • buffer: la variable de stockage des octets entrants (tableau de char[] ou de byte[])
  • length: le nombre d'octets (ou caractères) à lire (int)

Valeurs Renvoyées

  • byte: Cette fonction renvoie le nombre de caractères qui ont été stockés dans la variable buffer. 0 signifie qu'aucune donnée valide n'a été trouvée.

Exemple

const int BUFFER_SIZE = 100; char buf[BUFFER_SIZE]; void setup() { Serial.begin(9600); // opens serial port, sets data rate to 9600 bps } void loop() { // check if data is available if (Serial.available() > 0) { // read the incoming bytes: int rlen = Serial.readBytesUntil('\n', buf, BUFFER_SIZE); // prints the received data Serial.print("I received: "); for(int i = 0; i < rlen; i++) Serial.print(buf[i]); } }
  • Select Newline at the ending selection of Serial Monitor
  • Type "HELLO" on Serial Monitor
  • Click Send button:
Newbiely | Arduino IDE 2.3.8
──
File
Edit
Sketch
Tools
Help
Arduino Uno
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Arduino Uno' on 'COM15')
New Line
9600 baud
Ln 11, Col 1
Arduino Uno on COM15
2
  • The result on Serial Monitor:
Newbiely | Arduino IDE 2.3.8
──
File
Edit
Sketch
Tools
Help
Arduino Uno
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Arduino Uno' on 'COM15')
New Line
9600 baud
I received: HELLO
Ln 11, Col 1
Arduino Uno on COM15
2

ARDUINO BUY RECOMMENDATION

Arduino UNO R3
Arduino Starter Kit
Disclosure: Some links in this section are Amazon affiliate links. If you make a purchase through these links, we may earn a commission at no extra cost to you.
Additionally, some links direct to products from our own brand, DIYables .

※ OUR MESSAGES