PER Firmware
Loading...
Searching...
No Matches
gps.h File Reference

GPS driver for UBLOX NEO-M9N GPS module. More...

#include <stdint.h>

Go to the source code of this file.

Classes

struct  NAV_PVT_t
 
struct  GPS_Handle_t
 

Macros

#define GPS_RX_BUF_SIZE   100
 
#define UBX_NAV_PVT_HEADER_B0   0xB5
 
#define UBX_NAV_PVT_HEADER_B1   0x62
 
#define UBX_NAV_PVT_CLASS   0x01
 
#define UBX_NAV_PVT_MSG_ID   0x07
 
#define GPS_VALID_DATE   ((gps_valid_flags_t)0x01)
 
#define GPS_VALID_TIME   ((gps_valid_flags_t)0x02)
 
#define GPS_VALID_FULLY_RESOLVED   ((gps_valid_flags_t)0x04)
 
#define GPS_VALID_MAG   ((gps_valid_flags_t)0x08)
 
#define GPS_FIX_TYPE_NONE   ((gps_fix_type_t)0x00)
 
#define GPS_FIX_TYPE_DEAD_RECKONING   ((gps_fix_type_t)0x01)
 
#define GPS_FIX_TYPE_GNSS_2D   ((gps_fix_type_t)0x02)
 
#define GPS_FIX_TYPE_GNSS_3D   ((gps_fix_type_t)0x03)
 
#define GPS_FIX_TYPE_GNSS_DEAD_RECKONING   ((gps_fix_type_t)0x04)
 
#define GPS_FIX_TYPE_TIME_ONLY   ((gps_fix_type_t)0x05)
 
#define GPS_FLAG1_GNSS_FIX_OK   ((gps_flags1_t)0x01)
 
#define GPS_FLAG1_DIFF_SOLN   ((gps_flags1_t)0x02)
 
#define GPS_FLAG1_PSM_MASK   ((gps_flags1_t)0x1C)
 
#define GPS_FLAG1_PSM_OFF   ((gps_flags1_t)0x00)
 
#define GPS_FLAG1_PSM_ENABLED   ((gps_flags1_t)0x04)
 
#define GPS_FLAG1_PSM_ACQUIRED   ((gps_flags1_t)0x08)
 
#define GPS_FLAG1_PSM_TRACKING   ((gps_flags1_t)0x0C)
 
#define GPS_FLAG1_PSM_POWER_OPTIMIZED   ((gps_flags1_t)0x10)
 
#define GPS_FLAG1_PSM_INACTIVE   ((gps_flags1_t)0x14)
 
#define GPS_FLAG1_HEADING_VALID   ((gps_flags1_t)0x20)
 
#define GPS_FLAG1_CARRIER_PHASE_MASK   ((gps_flags1_t)0xC0)
 
#define GPS_FLAG1_CARRIER_PHASE_NONE   ((gps_flags1_t)0x00)
 
#define GPS_FLAG1_CARRIER_PHASE_FLOAT   ((gps_flags1_t)0x40)
 
#define GPS_FLAG1_CARRIER_PHASE_FIXED   ((gps_flags1_t)0x80)
 
#define GPS_FLAGS2_CONFIRMED_AVAILABLE   ((gps_flags2_t)0x20)
 
#define GPS_FLAGS2_CONFIRMED_DATE   ((gps_flags2_t)0x40)
 
#define GPS_FLAGS2_CONFIRMED_TIME   ((gps_flags2_t)0x80)
 

Typedefs

typedef uint8_t gps_valid_flags_t
 
typedef uint8_t gps_fix_type_t
 
typedef uint8_t gps_flags1_t
 
typedef uint8_t gps_flags2_t
 

Functions

bool GPS_Decode (GPS_Handle_t *gps)
 Function to decode periodic GPS UBX message.
 

Detailed Description

GPS driver for UBLOX NEO-M9N GPS module.

Author
Irving Wang (irvin.nosp@m.gw@p.nosp@m.urdue.nosp@m..edu)

Function Documentation

◆ GPS_Decode()

bool GPS_Decode ( GPS_Handle_t * gps)

Function to decode periodic GPS UBX message.

Parameters
GPSHandle for GPS configuration and data
Returns
true Parsing successful
false Parsing failed