3,11 → 3,15 |
|
#include <inttypes.h> |
|
#define INVALID 0x00 |
#define VALID 0x01 |
#define PROCESSED 0x02 |
|
typedef enum |
{ |
INVALID, |
NEWDATA, |
PROCESSED |
} Status_t; |
|
// Satfix types for GPSData.satfix |
#define SATFIX_NONE 0x00 |
#define SATFIX_DEADRECKOING 0x01 |
#define SATFIX_2D 0x02 |
14,6 → 18,11 |
#define SATFIX_3D 0x03 |
#define SATFIX_GPS_DEADRECKOING 0x04 |
#define SATFIX_TIMEONLY 0x05 |
// Flags for interpretation of the GPSData.flags |
#define FLAG_GPSFIXOK 0x01 // (i.e. within DOP & ACC Masks) |
#define FLAG_DIFFSOLN 0x02 // (is DGPS used) |
#define FLAG_WKNSET 0x04 // (is Week Number valid) |
#define FLAG_TOWSET 0x08 // (is Time of Week valid) |
|
|
/* enable the UBX protocol at the gps receiver with the following messages enabled |
23,7 → 32,7 |
|
typedef struct |
{ |
uint8_t status; // status of data: invalid | valid |
uint8_t flags; // flags |
uint8_t satnum; // number of satelites |
uint8_t satfix; // type of satfix |
int32_t longitude; // in 1e-07 deg |
35,7 → 44,7 |
int32_t veltop; // in cm/s |
uint32_t velground; // 2D ground speed in cm/s |
uint32_t VAcc; // in cm/s 3d velocity accuracy |
uint32_t updatetime; // ms |
Status_t status; // status of data: invalid | valid |
} GPS_INFO_t; |
|
//here you will find the current gps info |