Mickzan57
Messages postés5Date d'inscriptionmardi 4 avril 2006StatutMembreDernière intervention12 juillet 2006
-
7 avril 2006 à 13:47
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
7 avril 2006 à 16:24
Bonjour,
Je voudrai savoir s'il est possible d'envoyer autre chose qu'une chaine de caractères avec l'instruction mscomm1.output et notamment des nombres décimaux car je ne reçois que des codes ASCII sur le périphérique qui recoit les données envoyées.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 7 avril 2006 à 16:24
Salut
Oui (comme largement dit sur le forum), l'envoi comme la réception te fournit des codes ASCII, des caractères.
Si tu veux transmettre le chiffre 125 (entre 0 et 255) et non pas "1" puis "2" puis "5", il te suffit d'émettre le caractère dont le code ascii est 125 :
Chaine_a_Envoyer = Chr(125)
A la réception, tu peux acquérir les données :
- soit en ASCII : Il suffit alors de reconvertir le (ou les caractères) reçu(s) en ascii : Valeur = Asc(Lettre_Reçue)
- soit en tableau de Byte avec
Dim mesBytes() As Byte
mesBytes = MSComm.Input
Il faudra alors scruter le contenu du tableau ainsi reccueilli avec une boucle :
For r = 0 To UBound(mesBytes)
Debug.Pritn "Valeur = "; mesBytes(r)
Next r
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accro