Question

Supposons que votre téléphone Windows Mobile 6.0 dispose également d’un récepteur GPS. Le Kit de développement logiciel (SDK) WinMobile prend-il en charge l’accès à la fonctionnalité GPS?

Si non, quelles sont les options (API) de programmation avec le GPS, c.-à-d. écrire des applications qui utiliseront la fonctionnalité GPS. Je suis principalement intéressé par Windows Mobile 6.x, mais veuillez inclure les réponses génériques également.

Je voterai sûrement pour les réponses les plus utiles.

Merci d'avance.

Était-ce utile?

La solution

Deux options:

  1. Il existe un pilote GPS intermédiaire, qui comporte un article howto pour .Net. sur MSDN
  2. Vous pouvez vous connecter au port série (bien sûr configurable dans l'interface utilisateur) et analyser vous-même les chaînes NMEA

L'option (1) est probablement recommandée

Autres conseils

Chris Craft avait beaucoup de code source pour ce genre de choses dans sa série 30 jours d’applications Windows mobiles .NET

  • Semaine 1 - Compas GPS compris
  • Semaine 3 - Compteur de vitesse GPS et altimètre GPS inclus
  • Semaine 4 - Horloge GPS incluse

Malheureusement, cette série de blogs semble être morte, mais heureusement, le code est conservé sur Codeplex:

  

30 années d’applications Windows Mobile

Et un portage vers C et des discussions sur certains des messages originaux sont disponibles sur / dev / mobile

Il existe également quelques notes sur l'utilisation du pilote GPS intermédiaire sur Le blog de Raffaele Limosani

Modifier pour ajouter:

GPS.NET est récemment devenu une source ouverte et est maintenant disponible sur CodePlex:

  

GPS.NET 3.0

Si vous envisagez de développer le .NET Compact Framework, vous trouverez un exemple assez complet de GPS dans les exemples du développeur Windows Mobile. Cela utilise essentiellement les enveloppes autour de gpsapi.dll mais cela montre les travaux. J'ai installé le kit WM6 dans le Kit de développement logiciel C: \ Program Files \ Windows Mobile 6, puis l'exemple GPS est dans C: \ Program Files \ Kit de développement logiciel Windows Mobile 6 \ Samples \ PocketPC \ CS \ GPS

Bonne chance!

Essayez d’examiner certaines des solutions disponibles sur CodeProject.com . Il existe de très bons articles sur Windows Mobile et le GPS.

Et pour le code de test qui utilise le pilote intermédiaire (voir autres réponses), n'oubliez pas l'utilitaire FakeGPS du SDK que vous pouvez utiliser pour diriger un flux NMEA stocké dans un fichier via ce pilote intermédiaire afin de pouvoir facilement tester Le logiciel GPS utilise ces données de localisation sans avoir à recevoir de réception GPS et à se déplacer.

De mon point de vue, il est beaucoup plus facile de lire le port série (dans mon cas, COM5, débit 4800) et d’analyser les données reçues. (comment analyser la chaîne peut être trouvé via Google et la phrase: phrases gps NMEA)

Pour moi, il est impossible de comprendre l'exemple sur l'adresse:

C:\Program Files\Windows Mobile 6 SDK\Samples\PocketPC\CS\GPS

Tout cela est tellement compliqué et peu pratique. Je m'attendrais à une interface beaucoup plus facile et utile comme:

myGps = new GPS()
myGPS.getPosition

Mais ce n'est probablement pas possible: (

Et comment le faire via RS232? (Je travaille dans VB.NET)

Dans l'interface graphique (ou par programme), créez l'objet System.IO.Ports.SerialPort et utilisez son événement DataReceived. Chaque fois que des données proviennent du GPS, cet événement se produit et vous pouvez le traiter dans son corps.

Les données sont au format d'une longue chaîne divisée en sections $ GPGGA, $ GPGSA, etc. L'important est $ GPGGA. Chaque information particulière est délimitée par une virgule. Que vous n'analysiez que cette chaîne - dans VB.net en utilisant: myArray = myData.Split (",", c).

http://aprs.gids.nl/nmea/

PS: "," c signifie que la virgule est un caractère, pas de chaîne (VB.NET)

Comme vous pouvez le constater, il n’est pas nécessaire d’écrire plus de quelques lignes de code. L'exemple donné par MS est inutilement difficile et ne convient pas aux débutants.

PS2: Notez que vous n’envoyez aucune commande au GPS. Il envoie automatiquement et périodiquement des données à votre programme. Il vous suffit d'ouvrir le port, de lire toutes les données du tampon, de les convertir en chaîne à l'aide de Chr () et de les analyser. Pas grave.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top