|
Problème de lecture du Port COM (Arduino) |
Débuté par Muflih, 02 mai 2017 10:45 - 2 réponses |
| |
| | | |
|
| |
Posté le 02 mai 2017 - 10:45 |
Bonjour,
Je met en connexion mon Arduino avec WinDev pour tester la communication entre eux, le programme c'est pour allumer une LED on clickant sur le botton ON (WinDev) et OFF (WinDev) pour l'etteindre.
Code de connexion (Fonctionne parfaitement):
bMySerialEXPRESS est un booléen bMySerialEXPRESS = sOuvre(4,2000,2000) SI bMySerialEXPRESS=Vrai ALORS sFixeParamètre(4,9600,1,8,0) Info("Connexion ouverte") SINON Erreur("Erreur d'ouverture de COM1") FIN
Code du botton ON (aussi parfaitement):
sEcrit(4,"ON")
Donc lorsque j'envoi le mot "ON" vers l'Arduino, il le comprend parfaitement et allume la LED. Mais mon PROBLEME c'est quand je reçoi un mot depuis mon Arduino (Arduino vers WinDev), WinDev ne comprend pas le mot reçu, il comprend juste la première lettre, j'y arrive pas à comprendre.
Code d'affichage:
MsgEXPRESSEXPRESS est une chaîne MsgEXPRESSEXPRESS=sLit(4,sDansFileEntrée(4)) SAI_Texte1 = MsgEXPRESSEXPRESS
Quand j'envois "LED ON" depuis mon Arduino, WinDev m'affiche "LQz9", vous voyez que le premier caractère est bien le même, j'ai essayer avec Serial.print et Serial.write (Arduino) mais c'est toujour le même cas, et aussi j'ai fait des recherche de format de donnée, l'Arduino en ASII et WinDev en ANSI qui est le même que l'ASII, donc normalement ça devrait marcher.
voilà le code de l'Arduino:
String data;
void setup() { Serial.begin(9600); pinMode(LED_BUILTIN, OUTPUT); }
void loop() { if (Serial.available() > 0){ data = Serial.readString(); if (data.equalsIgnoreCase("ON")){ digitalWrite(LED_BUILTIN, HIGH); Serial.print("LED ON"); ////////C'est le mot que je veux lire et afficher sur WinDev///////// } else if (data.equalsIgnoreCase("OFF")){ digitalWrite(LED_BUILTIN, LOW); Serial.print("LED OFF"); } } }
Si quelqu'un peut m'aider à lire et afficher les bon caractères depuis Arduino > WinDev. Merci pour votre temps. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 962 messages Popularité : +183 (185 votes) |
|
Posté le 02 mai 2017 - 22:55 |
| |
| |
| | | |
|
| | |
| |
Posté le 03 mai 2017 - 00:49 |
Bonjour, Vous m'avez vraiment sauver la vie, je vous remercie beaucoup. Pour toi c'est un simple geste mais pour moi ce n'est pas le cas
Maintenant j'ai un autre problème, dans la zone de texte d'affichage, les mot envoyer depuis Arduino vers WinDev, ne s'affiche pas totalement sur WinDev, il affiche juste une partie, et lorque j'essaye à nouveau il affiche l'autre partie même si c'est une zond de texte à multiple lignes. |
| |
| |
| | | |
|
| | | | |
| | |
|