10 #ifndef ADAFRUIT_GNSS_H 11 #define ADAFRUIT_GNSS_H 16 #define GNSS_COORDINATE_TEXT_SIZE 17 49 typedef enum : uint8_t {
87 volatile char *secondBuffer = NULL,
size_t capacity = 0);
115 #endif // ADAFRUIT_GNSS_H static gnss_coordinate_t parseCoordinate(nmea_span_t coordinate, nmea_span_t hemisphere)
Decode a latitude or longitude field and its hemisphere.
Definition: Adafruit_GNSS.cpp:101
gnss_sentence_status_t
Result of validating fields used by a standard navigation decoder.
Definition: Adafruit_GNSS.h:49
Definition: Adafruit_NMEA.h:70
This validator does not handle the type.
Definition: Adafruit_GNSS.h:51
nmea_number_status_t status
Result of decoding the field.
Definition: Adafruit_GNSS.h:42
nmea_number_status_t fixQualityStatus
Quality field status.
Definition: Adafruit_GNSS.h:75
A required field position is absent.
Definition: Adafruit_GNSS.h:52
uint8_t day
Day of month, 1 through 31.
Definition: Adafruit_GNSS.h:43
uint8_t minute
Minute, 0 through 59.
Definition: Adafruit_GNSS.h:35
Definition: Adafruit_GNSS.h:22
Definition: Adafruit_GNSS.h:67
static gnss_position_t parsePosition(nmea_span_t type, nmea_span_t fields)
Decode a GGA, RMC, or GLL position without retaining receiver state.
Definition: Adafruit_GNSS.cpp:546
char hemisphere
Exactly N, S, E, or W on success.
Definition: Adafruit_GNSS.h:28
gnss_time_t time
UTC time, or EMPTY for a blank time field.
Definition: Adafruit_GNSS.h:71
uint8_t fixQuality
GGA quality, including RTK values; check its status.
Definition: Adafruit_GNSS.h:76
nmea_number_status_t fixStatus
Fix field status.
Definition: Adafruit_GNSS.h:73
gnss_date_t date
RMC date; MISSING in GGA/GLL, possibly EMPTY.
Definition: Adafruit_GNSS.h:72
Decoded NMEA date; no century is inferred. Components are zero on failure.
Definition: Adafruit_GNSS.h:41
Definition: Adafruit_GNSS.h:84
Definition: Adafruit_NMEA.h:41
A populated field has invalid content.
Definition: Adafruit_GNSS.h:53
gnss_sentence_status_t status
Result of navigation field validation.
Definition: Adafruit_GNSS.h:59
uint8_t hour
UTC hour, 0 through 23.
Definition: Adafruit_GNSS.h:34
nmea_number_status_t status
Result of decoding the field.
Definition: Adafruit_GNSS.h:33
gnss_validation_t validation
Sentence status and first failing field.
Definition: Adafruit_GNSS.h:68
uint8_t second
Second, 0 through 60 for a leap second.
Definition: Adafruit_GNSS.h:36
nmea_number_status_t status
Result of decoding the coordinate pair.
Definition: Adafruit_GNSS.h:23
Supported fields are valid or empty.
Definition: Adafruit_GNSS.h:50
static size_t formatCoordinate(char *output, size_t capacity, const gnss_coordinate_t &coordinate)
Format exact coordinate components as signed decimal degrees.
Definition: Adafruit_GNSS.cpp:195
Adafruit_GNSS(volatile char *firstBuffer=NULL, volatile char *secondBuffer=NULL, size_t capacity=0)
Create a GNSS receiver using the shared bounded NMEA framer.
Definition: Adafruit_GNSS.cpp:28
uint8_t month
Month, 1 through 12.
Definition: Adafruit_GNSS.h:44
uint8_t field
One-based error field, or zero without a field error.
Definition: Adafruit_GNSS.h:60
int32_t degreesE7
Decimal degrees times 10000000, truncated toward zero.
Definition: Adafruit_GNSS.h:24
gnss_coordinate_t latitude
Exact latitude components.
Definition: Adafruit_GNSS.h:69
uint32_t fractionalMinutes
Fraction of a minute times 1000000000.
Definition: Adafruit_GNSS.h:27
Decoded UTC time; all components are zero on failure.
Definition: Adafruit_GNSS.h:32
gnss_position_t lastPosition() const
Decode the latest complete line into an independent position result.
Definition: Adafruit_GNSS.cpp:47
Definition: Adafruit_NMEA.h:33
uint8_t minutes
Whole minutes, 0 through 59.
Definition: Adafruit_GNSS.h:26
uint16_t degrees
Whole unsigned degrees, 0 through 180.
Definition: Adafruit_GNSS.h:25
No complete frame with valid checksum.
Definition: Adafruit_GNSS.h:54
uint16_t millisecond
Fraction truncated to milliseconds, 0 to 999.
Definition: Adafruit_GNSS.h:37
uint8_t year
Two-digit year, 0 through 99.
Definition: Adafruit_GNSS.h:45
static gnss_validation_t validateNavigation(nmea_span_t type, nmea_span_t fields)
Validate standard fields before updating navigation data.
Definition: Adafruit_GNSS.cpp:372
bool fix
Valid fix; check fixStatus first.
Definition: Adafruit_GNSS.h:74
Validation result; coordinate-pair errors identify the coordinate field.
Definition: Adafruit_GNSS.h:58
nmea_number_status_t
Result of converting one complete field to a decimal number.
Definition: Adafruit_NMEA.h:49
static gnss_time_t parseTime(nmea_span_t field)
Decode a complete UTC hhmmss[.fraction] field.
Definition: Adafruit_GNSS.cpp:260
Hardware-independent NMEA sentence and field utilities.
gnss_coordinate_t longitude
Exact longitude components.
Definition: Adafruit_GNSS.h:70
static gnss_date_t parseDate(nmea_span_t field)
Decode a complete ddmmyy date field.
Definition: Adafruit_GNSS.cpp:311