Bon,alors voila ou j'en suis...
On ne rigole pas SVP

J'avoue que je me suis fortement inspiré...Mais j'ai compris presque tout ce que j’écrivais!
En consultant le moniteur série(recepteur),j'ai bien mes valeurs de potar comprises entre 0 et 179 qui varient en fonction du déplacement de mes potars.
Les valeurs sont écrites comme suit:potar_1,107potar_2,99potar_1,107potar_2,99potar_1,107 ect...
Maintenant çà ne fonctionne toujours pas...
Je pense que mon soucis vient en partie de la variable "Ans" que j'ai essayer d'écrire de cette maniére:
Ans = map (Ans,0,179,0,179);
Mais pas de changement...
Comme je l'ai dis plus haut,je ne suis pas un dieu de la prog alors je passe certainement à coté de quelque chose...
Coté émetteur:
void setup()
{
Serial.begin(9600);
}
void loop()
{
int ana1 = analogRead(2);
delay(10);
int ana2 = analogRead(3);
delay(10);
int val1 = map(ana1, 0, 1023, 0, 179);
int val2 = map(ana2, 0, 1023, 0, 179);
Serial.print("a");
Serial.print(val1);
Serial.print("b");
Serial.print(val2);
delay(5);
}
Coté récepteur:
#include <Servo.h>
char buffer [18];
Servo serv_1;
Servo serv_2;
int servopin_1= 8;
int servopin_2= 9;
void setup()
{
Serial.begin(9600);
serv_1.attach( 8 );
serv_2.attach( 9 );
}
void loop()
{
if (Serial.available() > 0){
int index=0;
delay(5);
int numchar = Serial.available ();
while (numchar--) {
buffer[index++] = Serial.read();
}
splitString(buffer);
}
}
void splitString (char* data){
Serial.print("Data entered: ");
Serial.println(data);
char* parameter;
parameter = strtok (data, ",");
while (parameter != NULL) {
servSet (parameter);
parameter = strtok (NULL, ",");
}
for (int x=0; x<16; x++) {
buffer[ x ] ='\0';
}
Serial.flush();
}
void servSet(char* data) {
if (data[0] == 'a'){
int Ans = strtol (data+1, NULL, 10);
Ans = map (Ans,0,179,0,179);
serv_1.write( Ans);
Serial.println(Ans);
}
//Serial.flush();
if (data[0] == 'b'){
int Ans = strtol (data+1, NULL, 10);
Ans = map (Ans,0,179,0,179);
serv_2.write(Ans);
Serial.println(Ans);
}
}