Bonjour,
Je dois faire une application communiquant avec un ohmmètre en RS2323
voici la doc de l'appareil:
8 bits de données, 1 bit de start, 1 bit de stop
déclenchement des mesures par RS232 <CRTL G> = 0x07
MegOhmmètre 1 Voie
Le message de communication se présente sous la forme de 9 caractères :
+ ####.#
avec correspondant à Cr - ascii 13 - et correspondant à Lf - ascii 10 - .
Exemple : +0010.0 correspondant à une mesure de 10.0 M .
MegOhmmètre 2 Voies
+ ####.#[Tab]+ ####.#
Voie 1 Voie 2
avec correspondant à Cr - ascii 13 - et correspondant à Lf - ascii 10 - [Tab] caractère
de tabulation.
Je dois donc lui envoyer une demande de mesure en envoyant un code ascii de "CTRL+G" qui équivaut à "0x07" comme indiqué dans la doc
Voici donc la trame que je lui envoi :
La mesure s'effectue ce qui veut dire que mon envoi est pour moi correct.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 ChronoDébut() sEcrit(gnPort,Caract(07)) sEvénement(gnPort,sEveCaractèreReçu,"Lecture")
Mais lors de la réception, je reçois des caractères spéciaux qui varient selon ses envies.
Voici ma lecture :
Mon appli me lance donc deux fenêtres infos avec des caractères spéciaux ainsi que des 9 qui se baladent.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 nNbOctet = sDansFileEntrée(gnPort) SI nNbOctet > 0 ALORS sReception = sLit(gnPort,nNbOctet) Info(sReception) FIN
Je ne mesure rien, les valeurs doivent donc être de 99.99 et 99.99 (j'ai 2 voix)
Je ne sais donc pas comment traiter ces chaines de retour.
Faut-il les convertir ?
Je n'ai peut-être pas bien compris la doc ?
Si vous avez des idées je suis preneur.
Merci d'avance,
Cordialement,
Partager