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

UBX NAV-PVT message definition and decoder function. More...

#include <stdint.h>
#include <stddef.h>
Include dependency graph for nav_pvt.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  NAV_PVT_data_t
 

Enumerations

enum  gps_valid_flags_t : uint8_t { GPS_VALID_DATE = 0x01 , GPS_VALID_TIME = 0x02 , GPS_VALID_FULLY_RESOLVED = 0x04 , GPS_VALID_MAG = 0x08 }
 
enum  gps_fix_type_t : uint8_t {
  GPS_FIX_TYPE_NONE = 0x00 , GPS_FIX_TYPE_DEAD_RECKONING = 0x01 , GPS_FIX_TYPE_GNSS_2D = 0x02 , GPS_FIX_TYPE_GNSS_3D = 0x03 ,
  GPS_FIX_TYPE_GNSS_DEAD_RECKONING = 0x04 , GPS_FIX_TYPE_TIME_ONLY = 0x05
}
 
enum  gps_flags1_t : uint8_t {
  GPS_FLAG1_GNSS_FIX_OK = 0x01 , GPS_FLAG1_DIFF_SOLN = 0x02 , GPS_FLAG1_PSM_MASK = 0x1C , GPS_FLAG1_PSM_OFF = 0x00 ,
  GPS_FLAG1_PSM_ENABLED = 0x04 , GPS_FLAG1_PSM_ACQUIRED = 0x08 , GPS_FLAG1_PSM_TRACKING = 0x0C , GPS_FLAG1_PSM_POWER_OPTIMIZED = 0x10 ,
  GPS_FLAG1_PSM_INACTIVE = 0x14 , GPS_FLAG1_HEADING_VALID = 0x20 , GPS_FLAG1_CARRIER_PHASE_MASK = 0xC0 , GPS_FLAG1_CARRIER_PHASE_NONE = 0x00 ,
  GPS_FLAG1_CARRIER_PHASE_FLOAT = 0x40 , GPS_FLAG1_CARRIER_PHASE_FIXED = 0x80
}
 
enum  gps_flags2_t : uint8_t { GPS_FLAGS2_CONFIRMED_AVAILABLE = 0x20 , GPS_FLAGS2_CONFIRMED_DATE = 0x40 , GPS_FLAGS2_CONFIRMED_TIME = 0x80 }
 

Functions

void NAV_PVT_decode (NAV_PVT_data_t *nav_pvt, const volatile uint8_t *rx_buffer)
 

Variables

static constexpr uint8_t NAV_PVT_HEADER_B0 = 0xB5
 
static constexpr uint8_t NAV_PVT_HEADER_B1 = 0x62
 
static constexpr uint8_t NAV_PVT_CLASS = 0x01
 
static constexpr uint8_t NAV_PVT_MSG_ID = 0x07
 
static constexpr size_t NAV_PVT_TOTAL_LENGTH = 100
 

Detailed Description

UBX NAV-PVT message definition and decoder function.

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

Enumeration Type Documentation

◆ gps_fix_type_t

enum gps_fix_type_t : uint8_t
Enumerator
GPS_FIX_TYPE_NONE 
GPS_FIX_TYPE_DEAD_RECKONING 
GPS_FIX_TYPE_GNSS_2D 
GPS_FIX_TYPE_GNSS_3D 
GPS_FIX_TYPE_GNSS_DEAD_RECKONING 
GPS_FIX_TYPE_TIME_ONLY 

◆ gps_flags1_t

enum gps_flags1_t : uint8_t
Enumerator
GPS_FLAG1_GNSS_FIX_OK 
GPS_FLAG1_DIFF_SOLN 
GPS_FLAG1_PSM_MASK 
GPS_FLAG1_PSM_OFF 
GPS_FLAG1_PSM_ENABLED 
GPS_FLAG1_PSM_ACQUIRED 
GPS_FLAG1_PSM_TRACKING 
GPS_FLAG1_PSM_POWER_OPTIMIZED 
GPS_FLAG1_PSM_INACTIVE 
GPS_FLAG1_HEADING_VALID 
GPS_FLAG1_CARRIER_PHASE_MASK 
GPS_FLAG1_CARRIER_PHASE_NONE 
GPS_FLAG1_CARRIER_PHASE_FLOAT 
GPS_FLAG1_CARRIER_PHASE_FIXED 

◆ gps_flags2_t

enum gps_flags2_t : uint8_t
Enumerator
GPS_FLAGS2_CONFIRMED_AVAILABLE 
GPS_FLAGS2_CONFIRMED_DATE 
GPS_FLAGS2_CONFIRMED_TIME 

◆ gps_valid_flags_t

enum gps_valid_flags_t : uint8_t
Enumerator
GPS_VALID_DATE 
GPS_VALID_TIME 
GPS_VALID_FULLY_RESOLVED 
GPS_VALID_MAG 

Function Documentation

◆ NAV_PVT_decode()

void NAV_PVT_decode ( NAV_PVT_data_t * nav_pvt,
const volatile uint8_t * rx_buffer )
Here is the caller graph for this function:

Variable Documentation

◆ NAV_PVT_CLASS

uint8_t NAV_PVT_CLASS = 0x01
staticconstexpr

◆ NAV_PVT_HEADER_B0

uint8_t NAV_PVT_HEADER_B0 = 0xB5
staticconstexpr

◆ NAV_PVT_HEADER_B1

uint8_t NAV_PVT_HEADER_B1 = 0x62
staticconstexpr

◆ NAV_PVT_MSG_ID

uint8_t NAV_PVT_MSG_ID = 0x07
staticconstexpr

◆ NAV_PVT_TOTAL_LENGTH

size_t NAV_PVT_TOTAL_LENGTH = 100
staticconstexpr