TwiceAsNice
2019-02-18
|
#include "minmea.h"
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <stdarg.h>
#include <time.h>
Macros | |
#define | boolstr(s) ((s) ? "true" : "false") |
#define | next_field() |
Functions | |
static int | hex2int (char c) |
uint8_t | minmea_checksum (const char *sentence) |
Calculate raw sentence checksum. More... | |
bool | minmea_check (const char *sentence, bool strict) |
Check sentence validity and checksum. More... | |
static bool | minmea_isfield (char c) |
bool | minmea_scan (const char *sentence, const char *format,...) |
Scanf-like processor for NMEA sentences. More... | |
bool | minmea_talker_id (char talker[3], const char *sentence) |
Determine talker identifier. More... | |
enum minmea_sentence_id | minmea_sentence_id (const char *sentence, bool strict) |
Determine sentence identifier. More... | |
bool | minmea_parse_rmc (struct minmea_sentence_rmc *frame, const char *sentence) |
bool | minmea_parse_gga (struct minmea_sentence_gga *frame, const char *sentence) |
bool | minmea_parse_gsa (struct minmea_sentence_gsa *frame, const char *sentence) |
bool | minmea_parse_gll (struct minmea_sentence_gll *frame, const char *sentence) |
bool | minmea_parse_gst (struct minmea_sentence_gst *frame, const char *sentence) |
bool | minmea_parse_gsv (struct minmea_sentence_gsv *frame, const char *sentence) |
bool | minmea_parse_vtg (struct minmea_sentence_vtg *frame, const char *sentence) |
bool | minmea_parse_zda (struct minmea_sentence_zda *frame, const char *sentence) |
int | minmea_gettime (struct timespec *ts, const struct minmea_date *date, const struct minmea_time *time_) |
Convert GPS UTC date/time representation to a UNIX timestamp. More... | |
#define next_field | ( | ) |
|
static |
Check sentence validity and checksum.
Returns true for valid sentences.
Calculate raw sentence checksum.
Does not check sentence integrity.
int minmea_gettime | ( | struct timespec * | ts, |
const struct minmea_date * | date, | ||
const struct minmea_time * | time_ | ||
) |
Convert GPS UTC date/time representation to a UNIX timestamp.
|
inlinestatic |
bool minmea_parse_gga | ( | struct minmea_sentence_gga * | frame, |
const char * | sentence | ||
) |
bool minmea_parse_gll | ( | struct minmea_sentence_gll * | frame, |
const char * | sentence | ||
) |
bool minmea_parse_gsa | ( | struct minmea_sentence_gsa * | frame, |
const char * | sentence | ||
) |
bool minmea_parse_gst | ( | struct minmea_sentence_gst * | frame, |
const char * | sentence | ||
) |
bool minmea_parse_gsv | ( | struct minmea_sentence_gsv * | frame, |
const char * | sentence | ||
) |
bool minmea_parse_rmc | ( | struct minmea_sentence_rmc * | frame, |
const char * | sentence | ||
) |
bool minmea_parse_vtg | ( | struct minmea_sentence_vtg * | frame, |
const char * | sentence | ||
) |
bool minmea_parse_zda | ( | struct minmea_sentence_zda * | frame, |
const char * | sentence | ||
) |
Scanf-like processor for NMEA sentences.
Supports the following formats: c - single character (char *) d - direction, returned as 1/-1, default 0 (int *) f - fractional, returned as value + scale (int *, int *) i - decimal, default zero (int *) s - string (char *) t - talker identifier and type (char *) T - date/time stamp (int *, int *, int *) Returns true on success. See library source code for details.
enum minmea_sentence_id minmea_sentence_id | ( | const char * | sentence, |
bool | strict | ||
) |
Determine sentence identifier.