Michael Ernst Peter / Mbed OS Test_GPS

Dependencies:   Eigen

Revision:
66:4057e8e5c248
Parent:
62:c9571e4d9005
Child:
67:1cac5dca9045
--- a/NEOM9N_thread.h	Thu Jun 09 07:46:49 2022 +0200
+++ b/NEOM9N_thread.h	Thu Jun 09 13:14:26 2022 +0200
@@ -25,7 +25,7 @@
 class NEOM9N
 {   
     public:
-        NEOM9N(PinName TX, PinName RX, float Ts);
+        NEOM9N(PinName TX, PinName RX);
         virtual ~NEOM9N();
 
         typedef struct ubxNavPVT_s {
@@ -43,13 +43,14 @@
             int32_t headMot;  // 64 1e-5 deg  Heading of motion (2-D)
             uint32_t sAcc;    // 68 -    mm/s Speed accuracy estimate
             uint32_t headAcc; // 72 1e-5 deg  Heading accuracy estimate (both motion and vehicle)
-            int16_t magDec;   // 88 1e-2 deg  Magnetic declination.
-            uint16_t magAcc;  // 90 1e-2 deg  Magnetic declination accuracy
+            //int16_t magDec;   // 88 1e-2 deg  Magnetic declination.
+            //uint16_t magAcc;  // 90 1e-2 deg  Magnetic declination accuracy
         } ubxNavPVT_t;
 
         void StartThread();
         void ZeroLocal();
         ubxNavPVT_t GetUbxNavPVT();
+        bool CheckAndToggleHasNewData();
         Eigen::Vector3f GetPosECEF();
         Eigen::Vector3f GetPosENU();
         Eigen::Vector3f GetVelENU();
@@ -60,6 +61,7 @@
         float m_Ts;
         BufferedSerial m_bufferedSerial;
         bool m_has_fix = false;
+        bool m_has_new_data = false;
         ubxNavPVT_t m_ubxNavPVT;
 #if PRINT_FOR_DEBUG
         Timer m_run_timer;