Merci à vous deux
barbudor:
Comme tu compares une différence (c'est exactement ce qu'il faut faire, bravo)
Je n'ai pas beaucoup de mérite, je n'ai fait qu'adapter la doc ![]()
Bon maintenant je chercher à récupérer une consigne de débit via la liaison série. Le but serait d'enregistrer une valeur lorsque la carte reçoit dans son buffer une chaîne "debit : valeur". Par exemple on tape "debit : 100" dans la liaison série et hop! la variable debit passe à 100.
Pour ce faire j'ai essayer d'adapter du code qui provient du cours du site du zero, mais rien que le test "if(mot==test) ne fonctionne pas et je ne comprend pas pourquoi...
char mot[5];
char test[5]={'d','e','b','i','t'};
void setup()
{
Serial.begin(115200);
}
void loop()
{
if(Serial.available())
{
//alors on va lire le contenu de la réception
lireVoieSerie();
Serial.println(mot);
}
}
//lit un mot sur la liaison série (lit jusqu'à rencontrer le caractère '\n')
void lireVoieSerie(void)
{
int i = 0; //variable locale pour l'incrémentation des données du tableau
//on lit les caractères tant qu'il y en a
//OU si jamais le nombre de caractères lus atteint 4 (limite du tableau stockant le mot - 1 caractère)
while(Serial.available() > 0 && i <= 4)
{
mot[i] = Serial.read(); //on enregistre le caractère lu
delay(10); //laisse un peu de temps entre chaque accès a la mémoire
i++; //on passe à l'indice suivant
if(mot==test)
{
Serial.println("ca marche");
}
}
mot[i] = '\0'; //on supprime le caractère '\n' et on le remplace par celui de fin de chaine '\0'
}