Salut, voici mon problème:
j'ai une string et je veux analyse le message qu'elle contiens.
Voila mon code:
void loop(){
while(Serial.available()){
String text = Serial.readString();
if(text == "r"){
Serial.println("Commande: r");
}
else if(text == "c"){
Serial.println("Commande: c");
}
else if(text == "m"){
Serial.println("Commande: m");
}
else{
Serial.println("Erreur pour: " + text);
}
}
}
mais quand j'ouvre le serial et que j'envoi a l'arduino (par exemple: c) je reçois:
Erreur pour: c
au lieu de:
Commande: c
et je ne sais pas comment faire?
Merci pour vos réponse.
Bonjour,
Tu as certainement des retour chariot et/ou line feed à la fin de ta commande.
Tu peux les enlever avec la fonction trim
String text = Serial.readString();
text.trim()
Et pourquoi tu ne fais pas imprimer la String text (par Serial.print() ) ?
Tu verrais au moins ce que ta variable text reçoit.
Par ailleurs, Serial.readString() prend, par défaut, 1 seconde avant de te répondre.
Pour le moment ça joue peu, mais ça viendra ?
Tu peux les enlever avec la fonction trim
Merci mille fois kamill ça fonctionne parfaitement!!!
;D
Comment fait-on pour marquer le sujet comme résolut?
J-M-L
5
swiftapp:
Comment fait-on pour marquer le sujet comme résolut?
à la main
vous éditez votre premier post et rajoutez [RESOLU] devant le texte du titre..
Merci pour vos reponse!!!