|
[WM14] Pas de trame gps lue |
Started by FREDO, Apr., 06 2009 12:50 PM - 61 replies |
| |
| | | |
|
| |
Posted on April, 06 2009 - 12:50 PM |
Bonjour, sur une plateforme windows ce, j'ouvre le port correspondant au gps, je n'ai aucune donnée lue sur le port Le port est ouvert correctement mais rien derriere...
Que faire ? |
| |
| |
| | | |
|
| | |
| |
Posted on April, 21 2009 - 3:39 PM |
en fait le gps doit être en mode sommeil, par contre je ne sais pas comment le reveiller ??? |
| |
| |
| | | |
|
| | |
| |
Posted on April, 21 2009 - 5:41 PM |
Le port est ouvert normalement, il y a bien un sfixeparamètre qui est fai ?
alex |
| |
| |
| | | |
|
| | |
| |
Posted on April, 21 2009 - 6:30 PM |
voici mon code de base "RES est un booléen=sOuvre(7,6000,6000) SI RES=Vrai ALORS Info("Com ok") sFixeParamètre(7, 38400, 1, 8, 0) SINON Erreur("") FIN" |
| |
| |
| | | |
|
| | |
| |
Posted on April, 21 2009 - 7:14 PM |
apres le sfixeparametre... je lance un timer pour lire le port
"Multitâche(-1) ListeAjoute(liste_mes,">:"+sDansFileEntrée( GnNumport)+"> "+sLit( GnNumport,1000)) SI gbValsortie=Vrai ALORS FinTimer(1);RETOUR"
mais rien dans la taille (sdansfileentree ) ni dans l'affichage du contenu (slit) |
| |
| |
| | | |
|
| | |
| |
Posted on April, 21 2009 - 8:18 PM |
Ce ne serait pas de l'ansi qui est récupéré ?
il faut obligatoirement faire un ansiversunicode du buffer lu. |
| |
| |
| | | |
|
| | |
| |
Posted on April, 22 2009 - 1:31 AM |
Non désolé je l'avais mis également auparavant , mais rien de mieux pas un caractere pourtant le port s'ouvre bien |
| |
| |
| | | |
|
| | |
| |
Posted on April, 22 2009 - 11:17 AM |
FREDO a formulé ce lundi :
Bonjour, sur une plateforme windows ce, j'ouvre le port correspondant au gps, je n'ai aucune donnée lue sur le port Le port est ouvert correctement mais rien derriere...
Que faire ?
Bonjour
En premier lieux, il faudrait peut-être tester le bon fonctionnement du GPS avec un utilitaire (voir sur le site GPS PASSION)
Ensuite, pc-soft fourni un composant GPS. Pour ma part, je m'en suis inspiré et ça fonctionne, mais sur du WM6... |
| |
| |
| | | |
|
| | |
| |
Posted on April, 22 2009 - 12:04 PM |
Bonjour,
sur l'appareil est installé un logiciel destinator qui fonctionne sans probleme (acquisition des sats trés rapide) pour le composant je ne suis meme pas pas à l'interprétation des données puique je n'ai rien. le composant a le même principe ouverture du port et lecture du buffer... |
| |
| |
| | | |
|
| | |
| |
Posted on April, 22 2009 - 1:46 PM |
Dans son message précédent, FREDO a écrit :
Bonjour,
sur l'appareil est installé un logiciel destinator qui fonctionne sans probleme (acquisition des sats trés rapide) pour le composant je ne suis meme pas pas à l'interprétation des données puique je n'ai rien. le composant a le même principe ouverture du port et lecture du buffer...
Si ça peut t'aider, voici le code utilisé pour initialiser le port :
// Ouverture du port spécifié SI PAS sOuvre(gnNumPort, 5000, 5000, 2000) ALORS FinProgramme("sOuvre a échoué:" + RC + ErreurInfo(errMessageSystème)) FIN
// Initialise les paramètres du port série SI PAS sFixeParamètre(gnNumPort, 4800, 0, 8, 1, Faux , Faux , Faux) ALORS FinProgramme("sFixeParamètre a échoué:" + RC + ErreurInfo(errMessageSystème)) FIN
// Initialisation du GPS // Active les messages GPMRC toutes les 2 secondes sEcrit(gnNumPort,"$PRWIILOG,RMC,A,T,2,0"+CRLF) // Active les messages GPGGA toutes les 2 secondes sEcrit(gnNumPort,"$PRWIILOG,GGA,A,T,2,0"+CRLF) // Désactive les messages PRWIZCH sEcrit(gnNumPort,"$PRWIILOG,ZCH,V,,,"+CRLF)
pour la lecture du port :
TANTQUE Vrai nTailleALire=sDansFileEntrée( pGPS.gnNumPort) SI nTailleALire= 0 ALORS SORTIR
SI EnModePocket() ET PAS EnModeTest() ALORS sLu += AnsiVersUnicode(sLit( pGPS.gnNumPort,nTailleALire)) SINON sLu += sLit( pGPS.gnNumPort,nTailleALire) FIN
SI Taille(sLu) > 1000 ALORS SORTIR FIN |
| |
| |
| | | |
|
| | |
| |
Posted on April, 22 2009 - 5:22 PM |
merci pour l'aide mais rien de mieux...
je n'ai pas non plus de sdk pour destinator (qui fonctionne bien) car si juste aprés je repasse sur destinator > 7/8 satellites
donc coincé |
| |
| |
| | | |
|
| | |
| |
Posted on April, 22 2009 - 6:01 PM |
FREDO avait prétendu :
merci pour l'aide mais rien de mieux...
je n'ai pas non plus de sdk pour destinator (qui fonctionne bien) car si juste aprés je repasse sur destinator > 7/8 satellites
donc coincé
Pas d'erreur sur sOuvre ? Pas d'erreur sur sFixeParamètre ? sDansFileEntrée est toujours à 0 ? -> c'est bien le bon port qui est ouvert ?
à part, désolé, mais plus d'idées... |
| |
| |
| | | |
|
| | |
| |
Posted on April, 23 2009 - 4:37 PM |
J'ai installé VisualGPSce qui recupere les trames sans problemes... je me demande si l'ouverture du port avec windev est vraiment correcte ou complete...
( dans le logiciel coté port com j'ai: COM7: - drivers\Builtin\gps )... |
| |
| |
| | | |
|
| | |
| |
Posted on April, 23 2009 - 8:24 PM |
Je pense que je vais devoir passer par les api windows... quelqun connais celles s'occupant des ports com ? |
| |
| |
| | | |
|
| | |
| |
Posted on May, 06 2009 - 7:09 PM |
probleme résolu: je mettais la lecture du port dans une chaine > il faut la mettre dans une variable buffer |
| |
| |
| | | |
|
| | |
| |
Posted on June, 17 2009 - 1:06 PM |
Bonjour,
Comme vous je rencontre des soucis avec la récupération des trames sur mon GPS.
J'utilise un Dell Axim X51v avec un récepteur Bluetooth GPS. J'ai WM6 installé sur ce Pocket. J'ai également TomTom installé sur le Pocket et je n'ai aucun oucis en paramétrant le récepteur en NMEA sur le port utilisé (COM1). J'ai essayé le projet GPS fourni par PCSOFT et je n'ai aucun e trame en retour ? Est ce quelqu'un rencontre ce problème et quelle est la solution?
J'ai testé plusieurs projets sous windev et j'ai toujours le même soucis. Je pense a une mauvaise gestion du buffer du port série qu'en pensez vous?
Merci d'avance pour votre aide
Cdt
Cezame |
| |
| |
| | | |
|
| | |
| |
Posted on June, 17 2009 - 4:30 PM |
test avec: souvre(... slit(...
pas de sfixeparametre et vois si tu recois quelquechose |
| |
| |
| | | |
|
| | |
| |
Posted on June, 17 2009 - 5:30 PM |
Je vais testé sans le sfixeparamètre merci.
Est ce que ceci a solutionné le problème de réception?
Avez vous un bout de code qui fonctionne?
Merci pour votre aide
Cezame |
| |
| |
| | | |
|
| | |
| |
Posted on June, 18 2009 - 8:57 AM |
J'ai exactement le même problème. J'utilise un smartphone (htc touch cruise). Mon tomtom détecte de suite les satelittes alors que l'appli Radars fixes ne détecte rien. Il reste passif alors que le port utilisé est le bon.
Je suis très intéressé par des réponses sur ce thread
Merci
Eric M. |
| |
| |
| | | |
|
| | |
| |
Posted on June, 18 2009 - 8:57 AM |
Concernant le composant Radars fixes:
pGPS.bInitConnexionGPS(COMBO_PORT[COMBO_PORT]) ramene bien true
mais ensuite
pGPS.gbQualité ramene Faux
Eric M. |
| |
| |
| | | |
|
| | |
| |
Posted on June, 18 2009 - 10:50 AM |
Cezame a pensé très fort :
Je vais testé sans le sfixeparamètre merci.
Est ce que ceci a solutionné le problème de réception?
Avez vous un bout de code qui fonctionne?
Merci pour votre aide
Cezame
Voir le code que j'ai posté plus haut, dans le fil... Comme l'a spécifié FREDO, il faut utiliser une variable de type buffer |
| |
| |
| | | |
|
| | |
| |
Posted on June, 18 2009 - 12:24 PM |
Yannick Est ce qu'avant de faire ton propre code, tu as testé l'appli fournie par PCSOFT ?
Mais , quoi qu'il en soit, je testerai ton code
Eric |
| |
| |
| | | |
|
| | |
| |
Posted on June, 18 2009 - 12:39 PM |
Le 18/06/2009, Eric MENARD a supposé :
Yannick Est ce qu'avant de faire ton propre code, tu as testé l'appli fournie par PCSOFT ?
Mais , quoi qu'il en soit, je testerai ton code
Eric
oui mon code est issu de l'exemple pc-soft. Je l'ai adapté car il ne fonctionnait avec un HTC |
| |
| |
| | | |
|
| | |
| |
Posted on June, 18 2009 - 3:12 PM |
Ah, très intéressant car j'utilise un htc touch cruise (l'ancien modèle de début 2008 sous WM6) |
| |
| |
| | | |
|
| | |
| |
Posted on June, 18 2009 - 3:42 PM |
En utilisant ton code, tailleaLire est à 0 et donc il sort
Eric |
| |
| |
| | | |
|
| | |
| |
Posted on June, 18 2009 - 4:04 PM |
Eric MENARD a écrit :
En utilisant ton code, tailleaLire est à 0 et donc il sort
Eric
dernières pistes :
si nTailleALire=0 c'est qu'il ne reçoit rien...
Pas d'erreur sur sOuvre ? Pas d'erreur sur sFixeParamètre ? -> c'est bien le bon port qui est ouvert ?
Ton pda n'a pas une connexion edge en même temps ? Il n'est pas raccordé à ton pc en même temps (via activesync) ?
Pour être sûr de faire les bons tests : - se mettre dans un endroit avec une bonne réception - tester le bon fonctionnement du gps avec un utilitaire (voir sur le site GPS PASSION) - arrêter cet utilitaire et lancer le programme Windev |
| |
| |
| | | |
|
| | |
| |
Posted on June, 18 2009 - 7:37 PM |
Pas d'erreur à l'initialisation mais seulement à la lecture des trames (boucle tantque) qui retourne toujours rien.
Tomtom récupère les satellites en moins de 15 secondes. je le referme. je lance l'appli windev et la toujours le néant. Pourtant, c'est bien le com4 qui est paramétré sur tomtom et j'ai donc mis 4 pour le port.
L'appli est paramétrée en pocket pc (wm6....)
C'est très énervant
Eric |
| |
| |
| | | |
|
| | |
| |
Posted on June, 18 2009 - 11:20 PM |
Je passe au Service Pack 29t ce soir, ca peut aider
Eric |
| |
| |
| | | |
|
| | |
| |
Posted on June, 19 2009 - 11:04 AM |
Toujours pareil:
Voici mon code
initialisation du projet: ======================== gLU est un Buffer TailleaLire est un entier gnNumPort est un entier
initialisation de la fenetre ============================ // Ouverture du port spécifié : (4) gnNumPort=4 SI PAS sOuvre(gnNumPort, 5000, 5000, 2000) ALORS FinProgramme("sOuvre a échoué:" + RC + ErreurInfo(errMessageSystème)) FIN
// Initialise les paramètres du port série SI PAS sFixeParamètre(gnNumPort, 4800, 0, 8, 1, Faux , Faux , Faux) ALORS FinProgramme("sFixeParamètre a échoué:" + RC + ErreurInfo(errMessageSystème)) FIN
// Initialisation du GPS // Active les messages GPMRC toutes les 2 secondes sEcrit(gnNumPort,"$PRWIILOG,RMC,A,T,2,0"+CRLF) // Active les messages GPGGA toutes les 2 secondes sEcrit(gnNumPort,"$PRWIILOG,GGA,A,T,2,0"+CRLF) // Désactive les messages PRWIZCH sEcrit(gnNumPort,"$PRWIILOG,ZCH,V,,,"+CRLF)
Sur un bouton ============= TANTQUE Vrai TailleaLire=sDansFileEntrée( gnNumPort) SI TailleaLire= 0 ALORS Info ("rien à lire") SORTIR FIN SI EnModePocket() ET PAS EnModeTest() ALORS gLU += AnsiVersUnicode(sLit( gnNumPort,TailleaLire)) SINON gLU += sLit( gnNumPort,TailleaLire) FIN eLecturePort=gLU SI Taille(gLU) > 1000 ALORS Info ("sup 1000") SORTIR FIN FIN
Vois tu quelque chose de bizarre ?
Merci
eric |
| |
| |
| | | |
|
| | |
| |
Posted on June, 19 2009 - 11:29 AM |
Dans son message précédent, Eric a écrit :
Toujours pareil:
Voici mon code
initialisation du projet: ======================== gLU est un Buffer TailleaLire est un entier gnNumPort est un entier
initialisation de la fenetre ============================ // Ouverture du port spécifié : (4) gnNumPort=4 SI PAS sOuvre(gnNumPort, 5000, 5000, 2000) ALORS FinProgramme("sOuvre a échoué:" + RC + ErreurInfo(errMessageSystème)) FIN
// Initialise les paramètres du port série SI PAS sFixeParamètre(gnNumPort, 4800, 0, 8, 1, Faux , Faux , Faux) ALORS FinProgramme("sFixeParamètre a échoué:" + RC + ErreurInfo(errMessageSystème)) FIN
// Initialisation du GPS // Active les messages GPMRC toutes les 2 secondes sEcrit(gnNumPort,"$PRWIILOG,RMC,A,T,2,0"+CRLF) // Active les messages GPGGA toutes les 2 secondes sEcrit(gnNumPort,"$PRWIILOG,GGA,A,T,2,0"+CRLF) // Désactive les messages PRWIZCH sEcrit(gnNumPort,"$PRWIILOG,ZCH,V,,,"+CRLF)
Sur un bouton ============= TANTQUE Vrai TailleaLire=sDansFileEntrée( gnNumPort) SI TailleaLire= 0 ALORS Info ("rien à lire") SORTIR FIN SI EnModePocket() ET PAS EnModeTest() ALORS gLU += AnsiVersUnicode(sLit( gnNumPort,TailleaLire)) SINON gLU += sLit( gnNumPort,TailleaLire) FIN eLecturePort=gLU SI Taille(gLU) > 1000 ALORS Info ("sup 1000") SORTIR FIN FIN
Vois tu quelque chose de bizarre ?
Merci
eric
Ma procédure de lecture du port est dans une procédure, appelée par un timer tous les 100ème de secondes. |
| |
| |
| | | |
|
| | |
| |
Posted on June, 19 2009 - 3:35 PM |
Cà fonctionne.
Merci beaucoup à tous et notamment a yannick |
| |
| |
| | | |
|
| | |
| |
Posted on June, 19 2009 - 5:05 PM |
Peut tu nous expliquer ou se situait ton problème et comment tu l'a solutionné?
Peut être pourrait tu poste le code focntionnel ou les modifications que tu as apporté au code du projet GPS de pcsofty si tu es parti de celui ci?
Merci d'avance |
| |
| |
| | | |
|
| | |
| |
Posted on June, 19 2009 - 6:38 PM |
Celà parait même facile de recréer un composant qui contient les meme fonctions proposées par PCSOFT
Eric |
| |
| |
| | | |
|
| | |
| |
Posted on June, 19 2009 - 6:38 PM |
par rapport au code que j'ai posté (qui est celui de yannick), j'ai juste viré le bouton, puis créé une procedure qui contient le meme code.
Maintenant , j'attaque l'analyse des trames avec des infos trouvées ici : http://aprs.gids.nl/nmea/ mais je vois déjà la latitude longitude etc..
je sens que je vais bien m'amuser car cette fois, j'avance
Eric |
| |
| |
| | | |
|
| | |
| |
Posted on June, 25 2009 - 3:39 AM |
Message surtout destiné à Yannick que je salue:
J'ai pas mal progressé dasn mon projet. J'ai un phenomène étrange. J'ai affiché une carte (disons un quartier) et lorsque je me promène, le point GPS s'affiche bien le long de mon trajet mais avec une latence. C'est comme si le point me suivait pas loin derrière moi.
Se peut-il que le port série contiennent des paquets en file d'attente ? Je sais que mon code n'est pas parfait car finalement, seules les trames $GPGGA m'interessent et pourtant je les lis toutes et caractère par caractère.
Y a t'il y moyen d'identifier dasn le buffer uniquement cette trame si ?
Dans l'attente de ta réponse
Eric M. |
| |
| |
| | | |
|
| | |
| |
Posted on June, 25 2009 - 11:14 AM |
Eric a émis l'idée suivante : > Message surtout destiné à Yannick que je salue: Bonjour Eric
J'ai pas mal progressé dasn mon projet. J'ai un phenomène étrange. J'ai affiché une carte (disons un quartier) et lorsque je me promène, le point GPS s'affiche bien le long de mon trajet mais avec une latence. C'est comme si le point me suivait pas loin derrière moi.
Si le point est derrière toi, c'est que ça fonctionne déjà pas trop mal... Appelles-tu ta procédure toutes les 100ème de secondes ?
Se peut-il que le port série contiennent des paquets en file d'attente ? Je sais que mon code n'est pas parfait car finalement, seules les trames $GPGGA m'interessent et pourtant je les lis toutes et caractère par caractère.
L'analyse caractère par caractère n'est peut-être pas la bonne méthode car trop lente ? Tu peux directement tester si le buffer contient les trames de coorodnnées GPS Dans mon cas, je suis parti de l'exemple fourni par pc-soft. J'ai seulement modifié la partie réception des données (buffer de 1000 caractères) : je n'ai pas touché à l'analyse des trames...
Y a t'il y moyen d'identifier dasn le buffer uniquement cette trame si ?
Les coordonnées GPS sont dans les trames $GPGGA et $GPRMC
Dans l'attente de ta réponse
Eric M.
Yannick |
| |
| |
| | | |
|
| | |
| |
Posted on June, 25 2009 - 2:51 PM |
Tu utilise Google pour afficher la carte ?
Moi je souhaiterai afficher des points relevés sur une carte googlemap avec si possible une vignette.
Sais tu comment faire pour afficher plusieurs points sur une carte Google Map?
Merci d'avance
PS : Il faut d'abord que je solutionne mon problème de trames vides mais comme cela fonctionne en version pc sous windev je pourrais déjà tester la partie affichage sur googl.
Merci d'avance
Cdt
Cyril |
| |
| |
| | | |
|
| | |
| |
Posted on June, 25 2009 - 2:53 PM |
Bonjour Yannick
je confirme être déjà très content que ce satané point me suive, c'est déjà génial. Oui, je l'appelle tous les centièmes de secondes. merci pour l'info sur la trame $GPRMC, elle m'avait échappée.
Dans mon cas, je suis parti de l'exemple fourni par pc-soft. J'ai seulement modifié la partie réception des données (buffer de 1000 caractères) : je n'ai pas touché à l'analyse des trames...
Je vais retourner voir l'exemple de PCSOFT car actuellement, je fais tout à la mano.
merci beaucoup
Eric M. |
| |
| |
| | | |
|
| | |
| |
Posted on June, 25 2009 - 4:33 PM |
je ne comprend pas comment on modifie le composant. Peux tu m'eclairer ? j'ai aussi le logiciel windev, je ne sais pas si c'est utilie pour le modifier.
Eric |
| |
| |
| | | |
|
| | |
| |
Posted on June, 25 2009 - 4:34 PM |
Est ce que ca vient du fait que c'est un composant importé et pas créé dasn le projet ?
Eric |
| |
| |
| | | |
|
| | |
| |
Posted on June, 25 2009 - 5:02 PM |
Eric avait énoncé :
je ne comprend pas comment on modifie le composant. Peux tu m'eclairer ? j'ai aussi le logiciel windev, je ne sais pas si c'est utilie pour le modifier.
Eric
On ne peut pas modifier le composant en lui même J'ai pris les sources du composant exemple nommé "Pocket GPS" Les sources sont dans le répertoire : C:\WinDev Mobile 14\Composants\Composants Exemples\Mobile\Pocket GPS\Pocket GPS - Source |
| |
| |
| | | |
|
| | |
| |
Posted on June, 25 2009 - 5:35 PM |
Ahhh, merci yannick. je ne savais pas que ce composant existait tout seul. je n'avais reperé que l'exemple radars mobiles
Bon, ce soir, je remet tout à plat.
a+
Eric |
| |
| |
| | | |
|
| | |
| |
Posted on June, 25 2009 - 8:27 PM |
Eric a écrit dans le message de news <576afc7f3b1da4b3a4d4930c4c289d24@news.pcsoft> :
Ahhh, merci yannick. je ne savais pas que ce composant existait tout seul. je n'avais reperé que l'exemple radars mobiles
Bon, ce soir, je remet tout à plat.
a+
Eric
Peut tu nous faire part de tes avancées surtout au niveaui de la récupération des trames car avec mon matériel je n'arrive pas a lire les trames venant du récepteur GPS (voir mon post plus haut).
En fait je souhaite dans une appli racupérer des coordonnées GPS puis afficher ces points mémorisés sur une carte via google map.
Comme je n'ai pas encore réussi a récupérer les coordonnées GPS je n'avance pas trop.
Merci d'avance pour votre aide
Cezame |
| |
| |
| | | |
|
| | |
| |
Posted on June, 26 2009 - 12:59 PM |
Le composant fonctionne sur le projet exemple après avoir fais les aménagements de yannick. Je n'ai pas mon code devant moi mais je posterai mes corrections ce midi.
J'ai créé un nouveau projet pour repartir sur quelque chose de propre et pour le moment, le composant réagit mal mais je suis sur que ca vient d'un problème mineur.
j'en ai profité pour ajouter le nombre de satellites, pour les tests, ca aide.
Eric |
| |
| |
| | | |
|
| | |
| |
Posted on July, 06 2009 - 10:49 AM |
Bonjour
Votre bout de code m'interresse également.
Merci
Cordialement |
| |
| |
| | | |
|
| | |
| |
Posted on July, 09 2009 - 6:07 PM |
Le composant fonctionne parfaitement. je publie le code dès que possible (dès que je serai devant mon poste de dev) , désolé pour le retard.
Eric |
| |
| |
| | | |
|
| | |
| |
Posted on July, 17 2009 - 11:23 AM |
Eric a écrit dans le message de news <02c124cf4090d0425866ff2d1ed8840e@news.pcsoft> :
Le composant fonctionne parfaitement. je publie le code dès que possible (dès que je serai devant mon poste de dev) , désolé pour le retard.
Eric
Bonjour,
Ton code intéresse pas mal de mo,de apparement. Peut u le mettre a disposition? Je n'ai toujours pas réussi à lire les trames GPS Sur mon Dell X51v, je gakère depuis des semaines. Merci d'avance Cezame |
| |
| |
| | | |
|
| | |
| |
Posted on October, 09 2009 - 4:26 PM |
J'ai repris le code tel que Eric et Yannick ont ecrit sur le post avec un timer tous les 100 ms pour la procedure de lecture de trame mais je n'est rien du tout!
je suis sur un Intermec CN3e wm5 et Windev Mobile 12.
Quelqu'un aurait il La solution? |
| |
| |
| | | |
|
| | |
| |
Posted on October, 15 2009 - 7:39 PM |
Bonjour à tous,
Je vous fait partager mon expérience du problème, j'avais comme vous un problème de communication avec mon module GPS. Il m'a suffit de modifier dans le composant la vitesse de communication sur mon port série de 4800 en 9600 et le composant fonctionne à nouveau de façon optimale !! |
| |
| |
| | | |
|
| | |
| |
Posted on December, 14 2009 - 4:48 PM |
Bonjour à tous,
Suite à la casse de mon téléphone peu après mon dernier thread, j'ai du stopper mes devs sur mobile. je m'y suis remis depuis peu avec un HTC HD2. Le programme tel qu'il existait ne fonctionne plus maintenant. je suis en train de chercher la raison. En fait, les trames recues ne contiennent plus de retour chariot en fin de ligne mais des codes ascii 0. Dès ce problème résolu, je reviens vers vous.
Eric |
| |
| |
| | | |
|
| | |
| |
Posted on December, 18 2009 - 12:48 AM |
Et voila, ca fonctionne impec
Voici la procédure modifiée pour un fonctionnement sur HTC HD2 (Il y a du code inutile mais bon :
PROCEDURE LitDonnéesGPS()
ModeTrace est un booléen = Vrai sLuUniCode est une chaîne UNICODE sLuAnsi est un Buffer sLigne est une chaîne UNICODE ChPosition est un entier nOccurrence est un entier i est un entier nId est un entier rNDistance est un réel
nTailleALire est un entier nTailleALire=sDansFileEntrée( pGPS.gnNumPort) // lecture des données envoyées par le GPS sur le port UNIQUEMENT s'il y a des données à lire SI nTailleALire > 0 ALORS SI EnModePocket() ET PAS EnModeTest() ALORS QUAND EXCEPTION DANS sLuAnsi = SansEspace(sLit( pGPS.gnNumPort,Min(nTailleALire,500))) FAIRE //Info ("FATAL:"+NumériqueVersChaîne(nTailleALire)) FIN SINON sLuAnsi = SansEspace(sLit( pGPS.gnNumPort,Min(nTailleALire,500))) FIN sLuUniCode=AnsiVersUnicode(sLuAnsi) // test de lecture des données envoyées par le GPS sur le port SI Position(sLuUniCode, "$GP")=0 ALORS pGPS.gbQualité = Faux RETOUR FIN // si la ligne n'est pas entière, on conserve le bout tronqué SI Droite(sLuUniCode,Taille(CRLF))<>CRLF ALORS ChPosition = PositionOccurrence(sLuUniCode,CRLF,1,DepuisFin) SI ChPosition > 0 ALORS sLuUniCode = sLuUniCode[[1 A ChPosition-1]] sLuAnsi = UnicodeVersAnsi(sLuUniCode) SINON sLuUniCode = SansEspace(sLuUniCode) + CRLF sLuAnsi = UnicodeVersAnsi(sLuUniCode) FIN FIN SI Gauche(sLuUniCode,1)<>"$" ALORS ChPosition = Position (sLuUniCode,CR,1,DepuisDébut) SI ChPosition > 0 ALORS sLuUniCode = Milieu(sLuUniCode,ChPosition+2,500) sLuAnsi=UnicodeVersAnsi(sLuUniCode) FIN FIN SI sLuUniCode<>"" ALORS // Nombre de lignes nOccurrence = ChaîneOccurrence(sLuUniCode,CRLF) // RC --> CRLF // Parcours de chaque ligne POUR i=1 A nOccurrence sLigne = ExtraitChaîne(sLuUniCode,i,CRLF) // Ligne telle quelle pGPS.gsLigne = sLigne SELON Gauche(sLigne,6) // Analyse GGA (GGA - Global Positioning Fix Data) CAS "$GPGGA" AnalyseGGA(sLigne) SI pGPS.gsCallBack<>"" ALORS ExécuteTraitement( pGPS.gsCallBack,trtProcédureProjet) FIN // Analyse RMC (GPS/Transit Data) CAS "$GPRMC" SI ModeTrace ALORS Trace("Trame $GPRMC - "+sLigne) AnalyseRMC(sLigne) SI pGPS.gsCallBack<>"" ALORS ExécuteTraitement( pGPS.gsCallBack,trtProcédureProjet) FIN AUTRES CAS FIN FIN FIN //info ("11") FIN |
| |
| |
| | | |
|
| | |
| |
Posted on January, 26 2010 - 8:07 AM |
Eric a écrit dans le message de news <b82417e233cb3bf13c79c8e3d2d644ce@news.pcsoft> :
Message surtout destiné à Yannick que je salue:
J'ai pas mal progressé dasn mon projet. J'ai un phenomène étrange. J'ai affiché une carte (disons un quartier) et lorsque je me promène, le point GPS s'affiche bien le long de mon trajet mais avec une latence. C'est comme si le point me suivait pas loin derrière moi.
Eric M.
Bonjour,
Quelle type de carte utilises-tu ?
Comment as tu fait le georeferencement ?
Carte de google map ? |
| |
| |
| | | |
|
| | |
| |
Posted on May, 10 2010 - 1:29 AM |
Bonjour Je cherche a faire communiquer le GPS de mon HD2 avec un appli WM15 mais je n'ai jamais de retour, meme probleme avec l'exemple PC Soft ou des applis de GPS Passion.
Pourriez vous donner un petit coup de main ?
Merci d'avance. |
| |
| |
| | | |
|
| | |
| |
Posted on June, 22 2010 - 2:40 AM |
Meme problème avec WM14 et l'HTC HD2 : aucune connexion possible quel que soit le port com déclaré.
Yoann a écrit dans le message de news <1c35147558d070f3c9375d437cd27a6d@news.pcsoft> :
Bonjour Je cherche a faire communiquer le GPS de mon HD2 avec un appli WM15 mais je n'ai jamais de retour, meme probleme avec l'exemple PC Soft ou des applis de GPS Passion.
Pourriez vous donner un petit coup de main ?
Merci d'avance.
|
| |
| |
| | | |
|
| | |
| |
Posted on June, 23 2010 - 7:39 PM |
Mon probleme est resolu grace au composant de Eric.
sarochar jean-michel a écrit dans le message de news <110b08e16b7c9852c4510214b1533227@news.pcsoft> :
Meme problème avec WM14 et l'HTC HD2 : aucune connexion possible quel que soit le port com déclaré. Yoann a écrit dans le message de news <1c35147558d070f3c9375d437cd27a6d@news.pcsoft> : Bonjour Je cherche a faire communiquer le GPS de mon HD2 avec un appli WM15 mais je n'ai jamais de retour, meme probleme avec l'exemple PC Soft ou des applis de GPS Passion.
Pourriez vous donner un petit coup de main ?
Merci d'avance.
|
| |
| |
| | | |
|
| | |
| |
Posted on June, 24 2010 - 12:43 PM |
Bonjour,
Il m'est apparu un problème similaire qui venait du simple fait de la vitesse de lecture à 9600 du composant Windev alors que mon HTC n'envoyait les infos qu'en 4800 peut-être une piste de plus pour vous. |
| |
| |
| | | |
|
| | |
| |
Posted on August, 20 2010 - 6:23 PM |
Bonjour à vous tous,
je me permet de relancer le sujet car vraiment je n'arrive à rien, malgré toutes les infos glanées sur ce post.
Je dispose d'un HTC Touch Diamond 2 et impossible de récupérer des infos du GPS embarqué. (je précise que je dispose d'un logiciel GPS qui lui fonctionne parfaitement).
Les fonctions de détection des ports com dispo me proposent le com4 ou le com7. Quand je choisi le com7, je n'ai que des retours via "slit" de "??" Quand je choisi le com4, la donnée "TailleàLire" contient plus de 27000000 caractères et le slit qui suit plante l'appli.
avez-vous des pistes à me proposer ?
merci d'avance
Jérôme |
| |
| |
| | | |
|
| | |
| |
Posted on August, 20 2010 - 7:56 PM |
Il faut également dans certains cas jouer avec la gestion du GPS sous Windows dans Paramètres->System et GPS. Soit il faut définir le port Com4 et décocher la gestion du GPS par Windows, soit il faut définir "Aucun" port COM et cocher la gestion du GPS par Windows. Je me souviens avoir fait plusieurs essai sur des mobiles différents et cette configuration ne fonctionnait pas de la même façon sur tous.
Espérant avoir donné une nouvelle piste de recherche. |
| |
| |
| | | |
|
| | |
| |
Posted on August, 23 2010 - 12:38 PM |
Dufosse damien a écrit dans le message de news <e8320e30c4c9a884643c2bf547fd4e2e@news.pcsoft> :
Il faut également dans certains cas jouer avec la gestion du GPS sous Windows dans Paramètres->System et GPS. Soit il faut définir le port Com4 et décocher la gestion du GPS par Windows, soit il faut définir "Aucun" port COM et cocher la gestion du GPS par Windows. Je me souviens avoir fait plusieurs essai sur des mobiles différents et cette configuration ne fonctionnait pas de la même façon sur tous.
Espérant avoir donné une nouvelle piste de recherche.
Merci Damien pour ces infos, mais j'ai finalement solutionné mon problème. En fait, il n'y avait pas de problème. Mais je voulais utiliser wm15 pour tracer en pas à pas le projet lancé sur le téléphone...et dans cette configuration je plantais à chaque SLit. En revanche quand l'appli se lançait en "autonome" sur le téléphone, ça fonctionnait.
merci et bonne journée à tous
Jérôme |
| |
| |
| | | |
|
| | |
| |
Posted on September, 07 2010 - 7:29 PM |
Bonjour,
Je n'ai pas de soucis pour récupérer des données mais seule les données GGA et RMC m'interessent hors le port me retourne une quantité de données autres que les GGA et les RMC. Y a t'il une solution pour que je ne recupere que les GGA et les RMC? |
| |
| |
| | | |
|
| | |
| |
Posted on September, 07 2010 - 8:16 PM |
C'est à toi de ne prendre que les trames qui t'intéresse vu que c'est un flux continu. |
| |
| |
| | | |
|
| | |
| |
Posted on September, 13 2010 - 1:52 PM |
Comment dois je faire? sachant que J'ai deja fait :
// Initialisation du GPS // Active les messages GPMRC toutes les 2 secondes sEcrit(gnNumPort,"$PRWIILOG,RMC,A,T,2,0"+CRLF) // Active les messages GPGGA toutes les 2 secondes sEcrit(gnNumPort,"$PRWIILOG,GGA,A,T,2,0"+CRLF) // Désactive les messages PRWIZCH sEcrit(gnNumPort,"$PRWIILOG,ZCH,V,,,"+CRLF) |
| |
| |
| | | |
|
| | | | |
| | |
|