Bonjour,

Je transmet, au travers de la liaison série un ensemble de data. Exemple :
1000/0b00000001/0;3000/0b00000000/0;3500/0b00000001/0;3800/0b00000000/1
Je me retrouve donc avec 4 parties contenant chacune, dans un tableau (j'ai mis les index [x]):
[0] 1000/0b00000001/0
[1] 3000/0b00000000/0
[2] 3500/0b00000001/0
[3] 3800/0b00000000/1
Je rencontre un souci avec la partie binaire. Je la retrouve bien si je la place dans une variable string, ors, j'aimerais la garder au format binaire sous un Byte.

Il s'avère que, quand j'exécute mon code je retrouve ceci :
1000
31
0
3000
43
0
3500
55
0
3800
67
1
Comment 0b00000001 devient 31 ? si je convertit 0x01 et 1
Comment 0b00000000 devient 43 ? si je convertit 0x00 et 0
Comment 0b00000001 devient 55 ? si je convertit 0x01 et 1
Comment 0b00000000 devient 67 ? si je convertit 0x00 et 0

Donc c'est erroné !

Voilà donc le morceau de code qui fait en partie le taff :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
/* VARIABLES*/
int timer = 0;
byte port = 0x00;
boolean stopWave = 0;
 
for(int j = 0; j < numCmds; j++)
{
   timer = atoi(strtok_r(cmds[j], "/", &ptr));
   port = strtok_r(NULL, "/", &ptr);                   //Ligne qui pose problème
   stopWave = atoi(strtok_r(NULL, "/", &ptr));
 
   Serial.println(timer);              //Ok
   Serial.println(port);               //NOK
   Serial.println(stopWave);       //Ok
}
Si voua avez une petite idée, j'ai essayer déjà pas mal de chose mais sans réel succès.