salut,
je souhaite réaliser une liaison I2C entre une arduino et une Raspberry Pi.
le problème est que je crée un tableau de "char" pour le transmettre, cela fonctionne une fois seulement toutes les autres fois mon tableau na plus les bonnes valeurs.
Voici le code et le moniteur série qui vous aiderons à comprendre, (je ne suis pas très claire)
#include <Wire.h>
char data[]= {};// mon tableau à envoyer
int i =0;
String donnees;
int humsol=50;
int humair=20;
void setup()
{
Serial.begin(9600);
Wire.begin(0x12); // addresse 0x12
Wire.onRequest(sender);
}
void loop()
{
donnees=""; //je vide le String donnees
donnees =String(humsol);
donnees += " "; // et je le remplis
donnees += String(humair);
Serial.println(donnees); // cela me donne 1 fois string = "50 20"
donnees.toCharArray(data,6); // je le tranforme en tableau de char
Serial.println(data); // cela me donne 1 fois char = "50 20"
delay(100);
}
void sender()
{
Wire.write(data1[i]); // envoi du tableau sur 5 byte
i++;
if(i>=5) i=0;
}