Dans l'idée j'ai deux arduino équipé d'un écran et de 2 sonde de température, et je voudrais qu'ils s'envoient les température l'un l'autre afin de les faire s'affiché sur l'écran de l'autre.
vous faites un print ou un write avec votre payload
ensuite c'est juste de la lecture d'un buffer de l'autre côté.
Si vous émettez en ASCII avec une fin de ligne, on gère un flux de données, vous pouvez jeter un oeil à mon petit tuto sur le port série, le principe de réception serait le même
vous pouvez aussi mettre les données dans une structure et balancer (avec write) la structure.
Si de l'autre côté vous avez la même architecture, vous prenez les octets qui arrivent dans un buffer et quand vous avez reçu le bon nombre, faites un memcpy() dans une structure du même type.
Hum, je peux envoyer FeuTricolore dans le moniteur série et dissocier les trois variables bytes vert, jaune et rouge de l'autre côté ? Si oui comment ? Car les recherche Google mélange structure de programme moniteur série et le mot clef strutc.
Si tu utilise le port série, l'idée est d'envoyer avec la fonction "write" le contenue de ta structure FeuTricolore, de l'autre coté avec "readBytes"
D'un coté tu aura Serial.write(&FeuTricolore, sizeof(FeuTricolore )), tu traite ta structure comme un tableau d'octets.
De l'autre Serial.readBytes(&FeuTricolore, sizeof(FeuTricolore )), une fois que Serial.available() te retourne le nombre d'octets correspondant à la taille de ta structure.
Je n'ai pas testé le code, par manque de temps de mettre en place tout le montage et d'écrire les programmes, c'est donc plus l'idée vers quoi aller.
Désolé de ne pas pouvoir être plus précis.
J'ai recherché un exemple mais je ne l'ai pas trouvé et je n'ai pas l'impression que le tuto de @J-M-L traite le sujet.
Au connaisseur, Je n'ai pas regardé si avec wowki on peut utiliser un softserial ?
vous lisez les octets reçu un par un avec read() dans le buffer (avec un indice qui se déplace, assurez vous de ne pas déborder) inspirez vous du code charServer où ils impriment ce qu'ils reçoivent octet par octet
if (client.available() > 0) {
char thisChar = client.read();
Serial.write(thisChar); // <== au lieu de l'imprimer stockez le dans le buffer
}
puis quand vous avez tout reçu vous copiez le buffer dans la structure