Bonjour à tous,
Je recois une valeur qui est sauvée dans une variable de type uint8_t
uint8_t buf[RH_RF95_MAX_MESSAGE_LEN];
Je peux l'imprimer ainsi
Serial.print(F("Got: "));
Serial.println((char*)buf);
Je dois comparer cette valeur et j'ai d'abord essayé ceci
if(strstr((char*)buf,"up") == 0)
{
Serial.println("Move UP");
}
Mais je n'ai jamais réussi à imrimer ce que je souhaitait. Alors je ne sais pas si j'utilise mal ma fonction strstr(), mais jsais que buf peut avoir cette valeur
75 70
Si buf est la valeru de "up"
Voici en fait mon code complet qui bug
if(strstr((char*)buf,"up") == 0)
{
Serial.println("Move UP");
}
else if(strstr((char*)buf,"right") == 0)
{
Serial.println("Move Right");
}
else if(strstr((char*)buf,"down") == 0)
{
Serial.println("Move Down");
}
else if(strstr((char*)buf,"left") == 0)
{
Serial.println("Move Left");
}
else
{
Serial.println("Release");
}
Je pensais que le fait de faire (char*)buf, strstr() allait bien comparer des char, mais rien n'est comparer nin à "left", "right","up","down".
J'aimerais bien savoir alors, comment soit par exemple
Convertir "up" en hexa pour le comparer à buf
ou alors convertir buf en chaine de caractere pour le comparer à "up".
Et ainsi de suite pour "down","left","rigth".
Voyez vous?
Merciiii!