3.7 KiB
Décoder les données GPS - Wio Terminal
Dans cette partie de la leçon, vous allez décoder les messages NMEA lus depuis le capteur GPS par le Wio Terminal et extraire la latitude et la longitude.
Décoder les données GPS
Une fois les données brutes NMEA lues depuis le port série, elles peuvent être décodées à l'aide d'une bibliothèque NMEA open source.
Tâche - décoder les données GPS
Programmez l'appareil pour décoder les données GPS.
-
Ouvrez le projet de l'application
gps-sensor
s'il n'est pas déjà ouvert. -
Ajoutez une dépendance de bibliothèque pour la bibliothèque TinyGPSPlus au fichier
platformio.ini
du projet. Cette bibliothèque contient du code pour décoder les données NMEA.lib_deps = mikalhart/TinyGPSPlus @ 1.0.2
-
Dans
main.cpp
, ajoutez une directive d'inclusion pour la bibliothèque TinyGPSPlus :#include <TinyGPS++.h>
-
Sous la déclaration de
Serial3
, déclarez un objet TinyGPSPlus pour traiter les phrases NMEA :TinyGPSPlus gps;
-
Modifiez le contenu de la fonction
printGPSData
comme suit :if (gps.encode(Serial3.read())) { if (gps.location.isValid()) { Serial.print(gps.location.lat(), 6); Serial.print(F(",")); Serial.print(gps.location.lng(), 6); Serial.print(" - from "); Serial.print(gps.satellites.value()); Serial.println(" satellites"); } }
Ce code lit le prochain caractère du port série UART dans le décodeur NMEA
gps
. Après chaque caractère, il vérifie si le décodeur a lu une phrase valide, puis s'il a lu une localisation valide. Si la localisation est valide, elle est envoyée au moniteur série, accompagnée du nombre de satellites ayant contribué à cette localisation. -
Compilez et téléchargez le code sur le Wio Terminal.
-
Une fois téléchargé, vous pouvez surveiller les données de localisation GPS à l'aide du moniteur série.
> Executing task: platformio device monitor < --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time --- More details at http://bit.ly/pio-monitor-filters --- Miniterm on /dev/cu.usbmodem1201 9600,8,N,1 --- --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H --- 47.6423109,-122.1390293 - from 3 satellites
💁 Vous pouvez trouver ce code dans le dossier code-gps-decode/wio-terminal.
😀 Votre programme de capteur GPS avec décodage des données a été un succès !
Avertissement :
Ce document a été traduit à l'aide du service de traduction automatique Co-op Translator. Bien que nous nous efforcions d'assurer l'exactitude, veuillez noter que les traductions automatisées peuvent contenir des erreurs ou des inexactitudes. Le document original dans sa langue d'origine doit être considéré comme la source faisant autorité. Pour des informations critiques, il est recommandé de recourir à une traduction humaine professionnelle. Nous déclinons toute responsabilité en cas de malentendus ou d'interprétations erronées résultant de l'utilisation de cette traduction.