Suite d'une demande d'un ami de Vbfrance....
Ce code permet de décoder les phrases reçues par le GPS. Les phrases sont sous forme de code NMEA (faut programmer votre GPS sur mode NMEA).
On utilise le composant Mscomm de Microsoft qui nous permet d'acquise les informations du GPS par le port RS232.
Source / Exemple :
Private Sub Form_Load()
' faut pas oubliez le paramétrage de Mscomm suivant le GPS utiliser
' comme les propriétés MSComm1.CommPort = 1 : Mscomm1.Settings ="4800,n,8,1"
MSComm1.PortOpen = True 'ouvrir le port, dans mon cas le port numéro 1
Timer1.Interval = 2000
'Ici je donne la valeur 2000 pour l'intervalle car les satellites envoient
'les phrases qui contient les informations chaque deux secondes,
'alors gardez cette valeur!!!
End Sub
Private Sub Timer1_Timer()
decoder ' on appel cette procédure chaque 2 secondes
End Sub
Public Sub decoder()
Dim TmpChaine As String
Dim i As Integer
On Error Resume Next
TmpChaine = MSComm1.Input ' reçois les phrases envoyer par les satellites
i = InStr(TmpChaine, "GPRMC") ' chercher le départ de la phrase qui nous intéresse
Do While Len(TmpChaine) - i < 61 'Vérifier si la phrase n'arrive pas à la fin
On Error Resume Next
TmpChaine = TmpChaine & MSComm1.Input ' stocker la phrase
Loop
' traiter la phrase et extrait les informations avec la fonction mid
Label1.Caption = Mid(TmpChaine, i + 6, 2) & ":" & Mid(TmpChaine, i + 8, 2) & ":" & Mid(TmpChaine, i + 10, 2)
Label2.Caption = "N " & Mid(TmpChaine, i + 15, 2) & "°" & Mid(TmpChaine, i + 17, 2) & "." & Mid(TmpChaine, i + 20, 2) & "'"
Label3.Caption = "E " & Mid(TmpChaine, i + 25, 3) & "°" & Mid(TmpChaine, i + 28, 2) & "." & Mid(TmpChaine, i + 31, 2) & "'"
Label4.Caption = Mid(TmpChaine, i + 48, 2) & "/" & Mid(TmpChaine, i + 50, 2) & "/" & Mid(TmpChaine, i + 52, 2)
'exemple:
'$GPRMC,022804.19,A,3301.5767,S,07131.1408,W,08.5,061.8,040101,06.,E*68
'label1 contient l'heure (Time): hh:mm:ss
'label2 contient la position par rapport au Nord : N ...°...'
'Label3 contient la position par rapport au East : E...°...'
'label4 contient Date : JJ/MM/AA
'il y a des autres informations dans cette phrase a traiter...
End Sub
Conclusion :
Je sais qu'il existe des autres solutions, mais celle là très simple et marche bien :-).
Personnellement, j'utilise une autre méthode avec mon logiciel sur le GPS.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.