Bonjour à tous,
Cela fait toute l'après-midi que je cherche, essaie différente technique mais rien ne fonctionne et je ne trouve pas de tuto sauf un site qui semble très bien décrire la manip... mais qui à un bug d'affichage au moment le plus intéressant! ![]()
www.redohm.fr... et leur mail me retourne un undelivered!
Voilà mon code:
gps.begin(9600); // Confirmer l'écriture sur 9600 pour le GPS
delay(5000);
if (gps.available()) // if date is coming from software serial port ==> data is coming from SoftSerial shield
{
while(gps.available()) // reading data into char array
{
buffer[count++]=gps.read(); // writing data into array
if(count == 64)break;
}
Serial.write(buffer,count); // if no data transmission ends, write buffer to hardware serial port
clearBufferArray(); // call clearBufferArray function to clear the stored data from the array
count = 0; // set counter of while loop to zero
}
delay(3000);
Il m'affiche parfaitement la donnée que j'ai besoin après "Serial.write(buffer,count);" soit:
$GPGGA,172945.000,xxxx.2000,N,00xxx.1458,E,2,7,1.22,476.5,M,48.
Jusque là c'est bon... C'est la suite qui me pose problème... Comment décomposer chaque valeur entre les virgules pour en créer des variables séparées? J'ai vu que Serial.Println(buffer[23]) par exemple me sortait des données en bytes.
J'ai donc essayé les fonction Serial.ReadBytesUntil(), j'ai essayé d'écrire simplement dans un variable char, j'ai essayé d'utiliser String... j'ai bien lu et relu : Serial Input Basics thread
Mais rien n'y fait pour le moment! ![]()
Si vous avez un tutoriel qui me permettrait de comprendre un peu plus sur le sujet, je serai heureux de pouvoir apprendre sans m'arracher les cheveux!
Merci d'avance et à bientôt!