voici les deux code fait pour tester la conversion:
#include <Servo.h>
Servo serv;
char recu;
int pos;
void setup()
{
Serial.begin(9600);
serv.attach(9);
serv.write(90);
}
void loop()
{
if(Serial.available() )
{
recu = Serial.read();
switch(recu)
{
case '0'...'9':
pos = pos * 10 + recu - '0';
break;
}
Serial.println(pos);
}
}
et la reponse du serial avec valeur prise au hazard:
1
18
180
180
1801
18010
18010
-16499
31618
31618
-11499
16084
16084
et le second :
#include <Servo.h>
Servo serv;
char recu;
int pos;
void setup()
{
Serial.begin(9600);
serv.attach(9);
serv.write(90);
}
void loop()
{
if(Serial.available() )
{
recu = Serial.read();
switch(recu)
{
case '0'...'9':
pos = pos * 10 + recu - '0';
break;
}
Serial.println(pos);
}
pos = 0;
}
et la reponse (toujours avec un 0 en trop):
/-----------------------------------------------------------------/
1
8
0
01
0
09
0
01
2
0/------------------------------------------------------------/
savez vous d'ou cela peut venir j'ai tester plusieurs code mais je n'ai jamais de résultat concluent ??
Merci d'avance