bouille60
Messages postés3Date d'inscriptionvendredi 20 janvier 2006StatutMembreDernière intervention 2 février 2006
-
2 févr. 2006 à 16:06
bouille60
Messages postés3Date d'inscriptionvendredi 20 janvier 2006StatutMembreDernière intervention 2 février 2006
-
2 févr. 2006 à 16:28
SALUT,
voici un code que j'ai récupéré(developpez.com) et modifié pour traduire des trames NMEA provenant d'une girouette/anémomètre
ça marche bien sous excel mais le problème c'est qu'il faut que je crée un activeX pour intégrer sous INTOUCH V9.0 et lire les informations sur la supervision.Si quelqu'un à des informations sur les démarches à suivre, j'ai un peu de mal à commencer et j'aimerais bien un petit coup de pouce pour démarrer . merci...
Ce code n'est que provisoire, il ne réalise que 100 boucles(par la suite il devra tourner sans discontinuité durant la durée de l'application),mais si vous y voyez des erreurs flagrantes n'hésitez pas...
je suis néophyte et arrive bientôt en fin de formation...encore merci et salut.
Private Sub CommandButton1_Click()
Beep
Dim tampon As String
Dim flag As Boolean
Dim compteur As Integer
flag = False 'commande de sortie de boucle
compteur = 0 'nombre de boucles
'Vider le buffer
MSComm1.InBufferCount = 0
'choisir un port série
MSComm1.CommPort = 1 'Ici
'Balance
'4800 bauds,pas de parité, 8 bits de données, 1 bit d'arrêt
MSComm1.Settings = "4800,N,8,1" 'Ici
' indique au contrôle qu'il doit lire 1 seul caractère
'ce caractère sert à repérer la stabilisation de la balance
MSComm1.InputLen = 1 'Ici
'ouvre le port
MSComm1.PortOpen = True
UserForm1.Repaint
Do While (flag = False)
'Boucle tant que le 1er caractère n'est pas un dollar ($)
Do While MSComm1.Input <> "$"
Label1.Caption = ""
UserForm1.Repaint
Loop
'reception des trames
Do
DoEvents
tampon$ = tampon$ & MSComm1.Input 'enregistrer la reception des données dans une chaîne
Label1.Caption = tampon$ 'afficher la trame
Loop Until InStr(tampon$, (Chr$(13)) & vbcdlf) 'sortir dès que fin de trame
If Mid$(tampon$, 1, 2) = "II" Then 'identification trame selon premiers caractères
Label4.Caption = Val(Mid$(tampon$, 7, 5)) 'extraction et conversion en valeur numérique
Label5.Caption = 1.852 * Val(Mid$(tampon$, 15, 6)) 'idem ci-dessus + conversion en KM/H
End If
If Mid$(tampon$, 1, 2) = "WI" Then 'identification trame selon premiers caractères
Label6.Caption = Val(Mid$(tampon$, 9, 5)) 'extraction et conversion en valeur numérique
End If
tampon$ = ""
UserForm1.Repaint
compteur = compteur + 1 'incrémentation compteur à chaque boucle If compteur 100 Then flag True 'si nbre boucles atteint sortie de boucle
Loop
'ferme le port
MSComm1.PortOpen = False 'Ici
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
bouille60
Messages postés3Date d'inscriptionvendredi 20 janvier 2006StatutMembreDernière intervention 2 février 2006 2 févr. 2006 à 16:28
c'est encore moi !
j'ai oublié de demander si vous savez où trouver de la doc en français sur INTOUCH, j'en peux plus d'essayer de déchiffrer tous ses termes anglais, merci...