Probleme de reception sur port COM

colonelyagger Messages postés 2 Date d'inscription lundi 6 décembre 2004 Statut Membre Dernière intervention 6 février 2005 - 5 févr. 2005 à 20:14
colonelyagger Messages postés 2 Date d'inscription lundi 6 décembre 2004 Statut Membre Dernière intervention 6 février 2005 - 6 févr. 2005 à 00:53
Je developpe un petit soft bien utile pour l'entreprise à laquelle je travaille, ce soft consiste a lire ce que l'appareil envoi et à renvoyer les réponses automatiquement (ce qui évite de les taper au clavier). Le probleme c'est que je n'ai pas les premieres trames (4 premieres), juste les 2 derniers caractères chr(10) et chr(13) car il retourne bien à la ligne, et g besoin de la premiere pour envoyer une réponse. L'hyperterminal lit trés bien ces 4 premieres trames donc j'en déduis que c'est pas un probleme de configuration (9600,n,8,1).
Je pense que c'est un probleme avec RTS ou DTR, mais c pas facile a débugger sachant que je ne peux amener l'appareil en question chez moi.

PS : J'utile MScomm32.ocx

Merci a tous ceux qui pourront m'aider

2 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
5 févr. 2005 à 21:29
D'abords un petit conseil,


Essaye de travailler avec la doc de ton
appareil et ne fait pas trop confiance à Hyperterminal, c'est un
infidèle. Il ne t'affiche que les données qu'il peut interpreter comme
du texte. Si jamais tu as des caractères de controle (comme Esc, Ack,
...) dans tes trames, au mieux il t'affiche un petit carré, mais la
plupart du temps il n'affiche rien du tout.

Dans ma boite, on travaille avec un trés vieil outil qui affiche tout
ce qui est recu et envoyer en hexa, c'est PCScop et ça tourne sous dos,
et ça nous as sauvé la mise plusieurs fois. Mais il est payant.



Ca m'est arrivé de travailler aussi avec RS232HexCommTool payant aussi
mais il bénéficie d'une période d'essai et tourne sous Windows -->
http://www.rs232pro.com/





Bon je ferme la parentèse



Pour ton problème, as-tu vérifier que tu as la même configuration entre
la propriété Handshaking de MSComm32 et la valeur de 'Controle de flux'
de hyperterminal ?



Pour la gestion des flux avec RTS et DTR , il faut je pense le gerer 'à
la main'. Vérifie sur la doc de ton appareil qu'il necessite bien une
gestion de flux matériel, c'est de - en - courant de nos jours, au
moins dans l'industrie. Si on te parle d'une connexion 3 fils laisse
tomber RTS ça viens pas de la.



Fait une recherche dans les sources du site, ça problablement été traiter plusieurs fois.
0
colonelyagger Messages postés 2 Date d'inscription lundi 6 décembre 2004 Statut Membre Dernière intervention 6 février 2005
6 févr. 2005 à 00:53
Tout d'abord merci de ton aide.
Pour ce qui est de la doc technique de l'appareil, c impossible pour la raison que ce sont les appareils que nous fabricons (environs 50 par jours) et que le client n'a pas besoin d'avoir accés au port COM de celui-ci (appelé aussi "port maintenance"), seul le service appelé "Méthode" doit avoir cette doc. Et je ne peux pas leur demander parce que je "pique" leur boulot ce qui me vaudra normalement une prime car ce prog fera économiser du temps de travail non négligeable. Donc impossible de leur demander.
Mais g réalisé grace a toi que cela ne pouvait pas venir de RTS et DTR car l'option de controle de flux de l'hyperterminal est désactivé (Aucun) Ce qui est bizarre aussi car je suis sur en voyant l'implantation que les 9 broches sont utilisé (Prise Lemo utilisé)
g poster le meme message sur un autre forum et quelqu'un m'a repondu que cela venait peut etre de InputMod qui est configuré sur ComInputModeText, car l'hyperterminal est en émulation ANSI. Mais comme tu dis il est peut etre infidele lol. donc g ajouté à mon soft l'option de selection des 2 modes (ComInputModeText et ComInputModBinary) pour verifier lundi.
Pas facile de debugger sans avoir l'appareil a porter surtout quand on a un oscillo chez soi

encore merci
0
Rejoignez-nous