2018-07-17 15:15:58 +02:00
|
|
|
#ifndef _GPS_H
|
|
|
|
#define _GPS_H
|
2018-07-15 14:28:05 +02:00
|
|
|
|
2018-09-20 17:33:52 +02:00
|
|
|
#include <TinyGPS++.h> // library for parsing NMEA data
|
2018-07-28 01:51:20 +02:00
|
|
|
#include <TimeLib.h>
|
2018-07-17 13:51:41 +02:00
|
|
|
|
2018-10-20 09:58:53 +02:00
|
|
|
#ifdef GPS_I2C // Needed for reading from I2C Bus
|
2018-09-20 17:33:52 +02:00
|
|
|
#include <Wire.h>
|
|
|
|
#endif
|
|
|
|
|
2018-07-17 13:51:41 +02:00
|
|
|
typedef struct {
|
|
|
|
uint32_t latitude;
|
|
|
|
uint32_t longitude;
|
|
|
|
uint8_t satellites;
|
|
|
|
uint16_t hdop;
|
|
|
|
uint16_t altitude;
|
|
|
|
} gpsStatus_t;
|
2018-07-15 14:28:05 +02:00
|
|
|
|
2018-09-20 17:33:52 +02:00
|
|
|
extern TinyGPSPlus gps; // Make TinyGPS++ instance globally availabe
|
|
|
|
extern gpsStatus_t
|
|
|
|
gps_status; // Make struct for storing gps data globally available
|
2018-10-03 00:25:05 +02:00
|
|
|
extern TaskHandle_t GpsTask;
|
2018-07-17 11:53:43 +02:00
|
|
|
|
2018-07-15 14:28:05 +02:00
|
|
|
void gps_read(void);
|
|
|
|
void gps_loop(void *pvParameters);
|
|
|
|
|
|
|
|
#endif
|