Malokoxis
Messages postés83Date d'inscriptionlundi 3 janvier 2011StatutMembreDernière intervention22 février 2021
-
8 nov. 2015 à 20:16
Malokoxis
Messages postés83Date d'inscriptionlundi 3 janvier 2011StatutMembreDernière intervention22 février 2021
-
8 nov. 2015 à 23:19
Bonsoir,
Je souhaite communiquer avec un appareil en rs232.
Pour cela j'utilise le code suivant :
MSComm1.PortOpen = True 'ouverture du port com
MSComm1.Output = "0D 0D 0D 4D 44 4C 0D" 'envoie
Mais je n'ai pas l'impression que l'envoie fonctionne.
Comment être sur que les données sont parties ?
J'ai essaye de mettre ce code dans Mscomm1_OnComm :
If MSComm1.CommEvent = comEvSend Then
Text1.Text = Text1.Text & vbrclf & MSComm1.Output
End If
Mais rien n'apparait.
Pour info, le matériel (un scanner radio) que j'essaye de piloter, je peux déjà le piloter avec un autre logiciel et j'ai donc espionné les trames qui transitent par le port rs232 lorsque le logiciel communique avec le matériel.
NHenry
Messages postés15151Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention 4 septembre 2024159 Modifié par NHenry le 8/11/2015 à 20:26
Il faut faire confiance au driver pour les données envoyées.
Pour les données que tu dois transmettre, tu te trompes sûrement :
Ce n'est pas
MSComm1.Output = "0D 0D 0D 4D 44 4C 0D"
mais :
MSComm1.Output = chr$(13) & chr$(13) & chr$(13) & "MDL" & chr$(13)
J'interviens principalement en VB6 et VB.NET, avec un peu de C#, mais la modération m'amène souvent sur d'autre langages.
En VB.NET pensez à activer "Option Explicit" et "Option Strict"