je suis nouveau en programmation et j'aimerais mettre au point un programme qui récupère une chaine de caractères écrite sur le port série " @0xAbR0x88D10101 " et la decomposer et stocker ses donnes dans des variables ex : si le code détecte un @ donc il affiche adresse = 0xAb
et si il détecte R il affiche Registre = 0x88
et si il détecte D il affiche DATA = 10101
voici ce que j'ai fait pour l'instant :
char *c;
void loop() {
while (Serial.available()) {
*c= Serial.read();
//Serial.print(*c);
if(*c=='@'){
Serial.println("Adress =");
*c= Serial.read();
for(int j=0;j<4;j++){
int A = atoi(*c);
Serial.print(A);
}
}
else if(*c=='R'){
Serial.println("");
Serial.println("Registre =");
for(int i=4;i<8;i++){
*c= Serial.read();
int R = atoi(*c);
Serial.print(R);
}
}
else if(*c=='D'){
Serial.println("");
Serial.println("Data =");
for(int k=8;k<16;k++){
*c= Serial.read();
int D = atoi(*c);
Serial.print(D);
}
}
}
ce que ça m'affiche
Adress =
0000
Registre =
0000
Data =
00000000
que des zeros