begin process at 2012 02 10 00:34:24
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Périphériques

 > LECTURE NMEA SUR PDA

LECTURE NMEA SUR PDA


 Information sur la source

Note :
1 / 10 - par 1 personne
1,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Périphériques Classé sous :pda, gps, serie, com Niveau :Débutant Date de création :23/02/2007 Vu / téléchargé :11 061 / 895

Auteur : Bobdesbois

Ecrire un message privé
Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

 Description

Bonjour,
Voila un petit programme fait entre mes heures de repos au boulot sous VB 2005 pour lire les trames NMEA d'un GPS sur un PDA. Le port série utilisé est le COM6 (il est très facile de le changer, je regarderais plus tard pour gérer la configuration du port série). Il ne lit que 3 types de trame (GPGGA, GPVTG et GPRMC qui sont les principales utilisées en général).
Soyez indulgent c'est le premier code que je pose sur le site et c'est un des premiers que j'ai developpé.
Il tourne sur windows CE 5.0.
Merci de me laisser des commentaires (constructifs) si vous avez des remarques.

Source

  • Public Class Form1
  • Dim end_trame As Boolean
  • Dim trame(100) As Byte
  • Dim i, j As Byte
  • Dim no_trame1, no_trame2, no_trame3 As Byte
  • Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  • If Button1.Text = "COM OFF" Then
  • Button1.Text = "COM ON"
  • SerialPort1.Open()
  • Timer1.Enabled = True
  • Else
  • Button1.Text = "COM OFF"
  • SerialPort1.Close()
  • Timer1.Enabled = False
  • End If
  • End Sub
  • Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick
  • If end_trame = True Then
  • end_trame = False
  • If CheckBox1.Checked = True Then
  • no_trame1 = 1
  • If trame(4) = 71 Then
  • If trame(5) = 65 Then
  • While trame(j) <> 10
  • j = j + 1
  • TextBox1.Text = TextBox1.Text & Chr(trame(j))
  • End While
  • j = 0
  • End If
  • End If
  • Else
  • no_trame1 = 0
  • End If
  • If CheckBox2.Checked = True Then
  • no_trame2 = 1
  • If trame(4) = 77 Then
  • If trame(5) = 67 Then
  • While trame(j) <> 10
  • j = j + 1
  • TextBox1.Text = TextBox1.Text & Chr(trame(j))
  • End While
  • j = 0
  • End If
  • End If
  • Else
  • no_trame2 = 0
  • End If
  • If CheckBox3.Checked = True Then
  • no_trame3 = 1
  • If trame(4) = 84 Then
  • If trame(5) = 71 Then
  • While trame(j) <> 10
  • j = j + 1
  • TextBox1.Text = TextBox1.Text & Chr(trame(j))
  • End While
  • j = 0
  • End If
  • End If
  • Else
  • no_trame3 = 0
  • End If
  • If (no_trame1 = 0 & no_trame2 = 0 & no_trame3 = 0) Then
  • TextBox1.Text = "PAS DE TRAME SELECTIONNEE" & Chr(13) & Chr(10)
  • End If
  • End If
  • End Sub
  • Private Sub SerialPort1_DataReceived(ByVal sender As System.Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived
  • trame(i) = SerialPort1.ReadByte
  • If trame(i) = 10 Then
  • end_trame = True
  • i = 0
  • Else
  • i = i + 1
  • End If
  • End Sub
  • Private Sub Form1_Load_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  • SerialPort1.Close()
  • End Sub
  • End Class
Public Class Form1
    Dim end_trame As Boolean
    Dim trame(100) As Byte
    Dim i, j As Byte
    Dim no_trame1, no_trame2, no_trame3 As Byte

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If Button1.Text = "COM OFF" Then
            Button1.Text = "COM ON"
            SerialPort1.Open()
            Timer1.Enabled = True
        Else
            Button1.Text = "COM OFF"
            SerialPort1.Close()
            Timer1.Enabled = False
        End If
    End Sub

    Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        If end_trame = True Then
            end_trame = False
            If CheckBox1.Checked = True Then
                no_trame1 = 1
                If trame(4) = 71 Then
                    If trame(5) = 65 Then
                        While trame(j) <> 10
                            j = j + 1
                            TextBox1.Text = TextBox1.Text & Chr(trame(j))
                        End While
                        j = 0
                    End If
                End If
            Else
                no_trame1 = 0
            End If
            If CheckBox2.Checked = True Then
                no_trame2 = 1
                If trame(4) = 77 Then
                    If trame(5) = 67 Then
                        While trame(j) <> 10
                            j = j + 1
                            TextBox1.Text = TextBox1.Text & Chr(trame(j))
                        End While
                        j = 0
                    End If
                End If
            Else
                no_trame2 = 0
            End If
            If CheckBox3.Checked = True Then
                no_trame3 = 1
                If trame(4) = 84 Then
                    If trame(5) = 71 Then
                        While trame(j) <> 10
                            j = j + 1
                            TextBox1.Text = TextBox1.Text & Chr(trame(j))
                        End While
                        j = 0
                    End If
                End If
            Else
                no_trame3 = 0
            End If
            If (no_trame1 = 0 & no_trame2 = 0 & no_trame3 = 0) Then
                TextBox1.Text = "PAS DE TRAME SELECTIONNEE" & Chr(13) & Chr(10)
            End If
        End If
    End Sub

    Private Sub SerialPort1_DataReceived(ByVal sender As System.Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived
        trame(i) = SerialPort1.ReadByte
        If trame(i) = 10 Then
            end_trame = True
            i = 0
        Else
            i = i + 1
        End If
    End Sub


    Private Sub Form1_Load_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        SerialPort1.Close()
    End Sub
End Class


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources de la même categorie

Source avec Zip Source .NET (Dotnet) LIRE ET CHANGER LA LUMINOSITÉ DES ÉCRANS LCD (DE PORTABLE) C... par ShareVB
Source avec Zip Source avec une capture VISUAL BASIC ET MICROPROCESSEUR MBED par ccllee
Source avec Zip Source avec une capture Source .NET (Dotnet) VARIATEUR SECTEUR 11 VOIES SUR PORT SERIE OU USB par mays
Source avec Zip Source avec une capture PILOTER LES PORTS PARALLELES. par djebbipgm
Source avec Zip PILOTER LES PORT COMM DE PC par djebbipgm

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture Source .NET (Dotnet) CLASSE POUR PILOTER EXCEL SIMPLEMENT par elguevel
Source avec Zip Source avec une capture [VBA EXCEL] CALCULER LA DISTANCE ENTRE DEUX COORDONNÉES GÉOG... par jack
Source avec Zip Source avec une capture Source .NET (Dotnet) VARIATEUR SECTEUR 11 VOIES SUR PORT SERIE OU USB par mays
Source avec Zip Source avec une capture Source .NET (Dotnet) UTILISATION DU PORT COM VS2005 par lesdis
Source avec une capture DÉCODAGE GPS SUR PORT SERIE, VITESSE EN KM/H ET DISTANCE PAR... par pompier0112

Commentaires et avis

Commentaire de Doudoup le 19/03/2007 15:39:40

Bonjour,
j'ai à lire éelemnt des trames GPS et j'essaye d'utiliser ton programme qui me va très bien. Par contre je ne suis pas un champion de VB et je ne vois pas où et comment on déclare serialport1. Qu'est ce que c'est comme type d'objet ? Y a-t-il une référence d'objet à utiliser ?
Quand je l'utilise j'ai une erreur de compilation "objet requis"
Si tu peux m'aider. Merci beaucoup.

Commentaire de Bobdesbois le 20/03/2007 09:07:18

Bonjour Doudoup,
Avant tout j'utilise visual basic de l'edition visual studio 2005 alors je ne sais pas comment ca marche avec d'autres editions. Alors il faut un objet qui ce trouve dans composants de l'appareil qui s'appelle SerialPort (lorsque tu es en mode creation ou concepteur de vue). Une fois cet objet ajouté il te faut choisir le port com qui correspond a celui que ton PDA utilise pour le GPS.
Voila si ce n'est pas tres clair n'hesite pas a relaisser un message.

Commentaire de lhoua94 le 25/04/2007 09:47:17

bonjour je voulais savoir comment créer un fichier .MSI ou .CAB pour l'installé sur un PDA?

voila mon code c'est juste une petite application :


Public Class Form1

PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Label.Text = TXT_texte.Text



EndSub
<MTAThread()> _

Public

SharedSub Main()

' Run a standard application message loop on the current thread.
Application.Run(

New Form1())

EndSub
End Class

Merci d'avance

Commentaire de lhoua94 le 25/04/2007 09:49:33

bonjour je voulais savoir comment créer un fichier .MSI ou .CAB pour l'installé sur un PDA?

voila mon code c'est juste une petite application :


Public Class Form1

PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Label.Text = TXT_texte.Text



EndSub
<MTAThread()> _

Public

SharedSub Main()

' Run a standard application message loop on the current thread.
Application.Run(

New Form1())

EndSub
End Class

Merci d'avance

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

com serie [ par hachim1m ] salut tout le mondej'aimerais bien savoir comment on peut lire des information du com serie du pc, puis les inseres dans une base de donnéemerci a vou Utilisation port serie pour PDA [ par Bobdesbois ] Bonsoir,Voila je possède un DELL AXIM X51V et je viens d'acheter une carte GPS en compact flash apparemment elle serait sur le port com2 et le logicie adaptateur qui converti le port usb du gps en com [ par nourhanan ] salam je travaille sur une application qui necesitte d'enregistrer les coordonnées (latitude et longitude) relevé par le gps (de type garmin port usb) Télécharger un GPS gratuit sur ma carte SD de mon PDA [ par titi72300 ] Bonjour, Je possède un PDA HTC P6500 qui me sert de téléphone, sachant que l'antenne GPS est intégrée, comment je peux télécharger un GPS gratuit su activer desactiver Port serie [ par hastalavista ] bonjour tout le mondeje cherche comment activer desactiver le port serie avec choix du com (activer desactiver et pas ouvrir \ fermer)c'est comme fair savoir etat port serie [ par hastalavista ] bonjour tout le monde je voulais savoir comment on peut connaitre "puis afficher" l'etat du port serie (COM 1 et COM 2 : active ou desactive ?) me connection wifi pc-->PDA [ par berpontini ] Bonjours a tousJ'ai creer un programme sous vb.net pour piloter via une carte de puissance des relais de mon PC.Je voudrais via un PDA envoyer un ordr serialization d'exception [ par ducker88 ] Je viens vous voir car vous etes ma dernière chance de trouver une solution. J'ai créé un objet com+ qui est appelé par un service windows et qui do savoir si COM X est activé ou desactivé [ par hastalavista ] bonjour tout le monde,j'ai deux application la premiere desactive (ou active) le COM1 et COM 2 et la deuxieme donne la liste de tout les COM sur mon P Ouverture de port COM supérieur à Com16 avec MSComm32 [ par jul1409 ] Bonjour,après 2 jours de galère, j'ai enfin trouvé comment ouvrir le COM17 (et plus) avec MSComm32.ocx.1 - faire une copie au préalable de MSComm32.oc


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 5,179 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales