Découper en plusieurs morceau une ligne de chiffres reçue par la carte.

Bonjour, j'ai un petit problème concernant mon programme arduino.
J'ai développé une application qui me permet d'envoyer plusieurs valeurs, qui sont reçue sous la forme de trois valeurs, en ligne, séparé par des points (ex: 10.5.5).
Mon problème est que je voudrais pouvoir traiter les valeurs une par une et non pas traiter cette ligne comme une valeur unique.
J'ai trouvé une fonction "strtok" je ne sais pas si c'est la solution la plus approprié à mon problème.

P.S: Je suis débutant dans le domaine de l'arduino

Bonjour,

Oui, strtok() suivi de atoi() est la solution à ton problème.

vos valeurs sont envoyées et reçues comment ? par le port Série?
si oui vous pouvez simplement les lire en disant que le séparateur c'est un point ou un retour à la ligne et lire nombre par nombre plutôt que d'avoir à lire toute une ligne et ensuite devoir décoder

mais bon, sinon oui strtok peut le faire par exemple

Avec strtok, tu obtiendras encore des char : exemple adapté de cette page

void setup() {
  Serial.begin(115200);

  char str[7] = "10.5.5";
  const char s[2] = ".";
  char *token;

  /* get the first token */
  token = strtok(str, s);

  /* walk through other tokens */
  while ( token != NULL ) {
    Serial.println(token);
    token = strtok(NULL, s);
  }
}

void loop() {}

fournit sur la console

10
5
5