From f37f200792444fee2f74e807acfd5be7c9180cd7 Mon Sep 17 00:00:00 2001 From: Votre Nom Date: Wed, 30 Aug 2017 10:48:11 +0400 Subject: Init repo --- GEOLOC/lib/gps.h | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 GEOLOC/lib/gps.h (limited to 'GEOLOC/lib/gps.h') diff --git a/GEOLOC/lib/gps.h b/GEOLOC/lib/gps.h new file mode 100644 index 0000000..49dbdd6 --- /dev/null +++ b/GEOLOC/lib/gps.h @@ -0,0 +1,53 @@ +#ifndef gps_h +#define gps_h + +/** + * Define NMEA frame types + */ +typedef enum NMEA_TYPE NMEA_TYPE; +enum NMEA_TYPE { GGA=125,NONE }; // TODO : other frame type + +/** + * Define compass N,S,E,W + */ +typedef enum COMPASS COMPASS; +enum COMPASS { NORTH=78, SOUTH=83, EAST=69, WEST=87}; + +/** + * Define GPS state + */ +typedef enum GPS_STATE GPS_STATE; +enum GPS_STATE { FIXED_GPS=1, FIXED_DGPS=2, UNFIXED=0}; + +/** + * Define NMEA GGA FRAME + */ +struct NMEA_GGA { + short hour; + short min; + short sec; + short ms; + + short latDeg; + short latMin; + float latSec; + COMPASS latDir; + + short lonDeg; + short lonMin; + float lonSec; + COMPASS lonDir; + + short sats; + GPS_STATE state; + + // TODO : Finish Frame + +}; + +/** + * Fetch the last NMEA_GGA frame + */ +struct NMEA_GGA getNMEA_GGAFrame(); + +#endif -- cgit v1.2.3