Ashen59
Messages postés1Date d'inscriptionvendredi 8 juillet 2005StatutMembreDernière intervention26 octobre 2007
-
26 oct. 2007 à 22:24
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
27 oct. 2007 à 01:58
Pour faire l'acquisition de données d'un lecteur de carte connecté au port série vers un fichier excel, j'ai trouvé cette page http://cherbe.free.fr/rs232.html dont le code fonctionne.
Le probleme est qu'il n'effectue que l'acquisistion d'au plus 6 caracteres sur une chaine de 20
Merci d'avance
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 27 oct. 2007 à 01:58
Salut
Tu es sous Excel, donc c'est du VBA (catégorie de ta question modifiée)
La source dont tu parles date du 30 Vendémiaire 210 (*), ce n'est pas d'hier !
Si j'ai bien compris, la source utilise MSComm32.
Ce composant émet un évènement "OnComm" lorsqu'il se passe quelque chose sur le port.
Cet évènement peut simplement être la réception de données (**), mais en réalité, cela signifie qu'il y a quelque chose dans le buffer de réception. "Quelque chose" : pas forcément tout.
Il te faudra donc peut-être attendre 1, 2 ou 10 déclenchements successifs pour acquiérir toutes les données.
Il te suffit donc de les stocker jusqu'à ce que tu décides qu'elles sont complètes.
Quand sont-elles complètes ?
Tout dépend de ce qui transite sur ce port.
Si tu utilises des protocoles genre ModBus, cela peut-être un CheckSum ou un bit de fin.
Si c'est du texte pur, il faut que l'émetteur ait prévu de t'envoyer un signe (un texte de fin ou simplement un caractère particulier comme un retour chariot Chr$(13)) quand les données sont complètement transmises ...
Ce sera a toi de détecter cette fin pour ensuite analyser les données reçues.
(*) Sep/Oct 2001
(**) Signal d'arrêt genre XOn/XOff, Détection de porteuse, Erreurs, CTS, DSR, Sonnerie ...
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)