PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Envoyer une commande à un port
Envoyer une commande à un port
Débuté par Nic, 12 juil. 2018 13:30 - 4 réponses
Posté le 12 juillet 2018 - 13:30
Bonjour,

Je dois interroger un port COM afin de récupérer une valeur.
Pour cela j'ai utilisé les fonctions sOuvre, sLit, ...

Je me rends compte dans la doc de l'outil que je dois envoyer au port un ordre afin qu'il me retourne la bonne info.
En l’occurrence je dois lui passer la chaine "P".
Est-ce qu'il suffit que j'ouvre le port (sOuvre), que j'utilise la fonction sEcrit pour ecrire "P" puis sLit pour lire le résultat ?

C'est la première fois que je dialogue avec des ports et que j'utilise ces fonctions.

Merci
Membre enregistré
391 messages
Popularité : +12 (12 votes)
Posté le 12 juillet 2018 - 14:17
Bonjour Nic, tu devras peut-être ajouter un CRLF à ton "P" pour qu'il soit accepté dans le dialogue.

A+, Michel

--
If it works, don't touch it, don't look at it, AND don't fix it ! No patches, no SP ! JUST DONT FIX IT.
Posté le 12 juillet 2018 - 14:25
Merci pour la réponse

cette syntaxe de sEcrit est correcte ?

sEcrit(nPort,"P" + RC)


Merci
Membre enregistré
391 messages
Popularité : +12 (12 votes)
Posté le 12 juillet 2018 - 15:25
En principe oui. Tu peux aussi facilement détailler tes commandes en leur donnant un nom :

sOrdreLectureTemperature est une chaine = "P"
sOrdreEcritureTemperatureMinimum est une chaine = "TMI"
sOrdreEcritureTemperatureMaximum est une chaine = "TMA"

sFonctionAExecuter est une chaine = sOrdreXYZ + RC //(XYZ = fonction que tu souhaites
sEcrit(nPort,sFonctionAExecuter)
// Attendre la fin de l'écriture
BOUCLE
SI sDansFileSortie(nPort) = 0 ALORS SORTIR
FIN
Info("Fin de l'écriture")

--
If it works, don't touch it, don't look at it, AND don't fix it ! No patches, no SP ! JUST DONT FIX IT.
Posté le 12 juillet 2018 - 15:29
d'ac,

merci pour ton aide