GPS working with LoRa code - can't transmit faster that once every 6 seconds
Dependencies: mbed LoRaWAN-lib_gps_lora SingleFrequencyLora
Diff: l86.hpp
- Revision:
- 5:850a9db98a41
- Child:
- 6:670ff1507ff4
diff -r 433e629dbeeb -r 850a9db98a41 l86.hpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/l86.hpp Sun Nov 12 23:34:19 2017 +0000 @@ -0,0 +1,46 @@ +/* + * l86.h + * Author: Rishin Amin + * library header file for communication with the Quectel L86 MT33 GPS module + * + */ + +#ifndef l86_hpp +#define l86_hpp + +#define DEBUGGER // uncomment to output serial data to PC + +#define MAX_NMEA_LENGTH 82 // maximum length of an NMEA sentence +#define PMTK_SET_NMEA_OUTPUT_RMC "$PMTK314,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0*29\r\n" +#define PMTK_SET_UPDATE_F_2HZ "$PMTK300,500,0,0,0,0*28\r\n" + +static const char GPRMC_Tag[] = "$GPRMC"; +static const char GNRMC_Tag[] = "$GNRMC"; + +typedef struct RMC_data +{ + char Message[MAX_NMEA_LENGTH]; /* Un-parsed NMEA sentence */ + char Message_ID[7]; /* RMC Protocol header */ + char UTC_Time[11]; /* hhmmss.sss */ + char Status[2]; /* A = data valid, V = data NOT valid */ + char Latitude[10]; /* ddmm.mmmm */ + char N_S_Indicator[3]; /* N = North, S = South */ + char Longitude[11]; /* dddmm.mmmm */ + char E_W_Indicator[3]; /* E = East, W = West */ + char Speed_Over_Ground[5]; /* In Knots */ + char Course_Over_Ground[7]; /* Degrees */ + char Date[7]; /* ddmmyy */ + char Mode[5]; /* N = No Fix A = autonomous mode, D = Differential mode */ +}RMC_Data; + +void Parse_RMC_data(RMC_data RMC_data_parse); + + +// uint8_t l86_send(char *string); // generic function for sending a command to the module +// void l86_set_uf(uint8_t update_f); // set the update frequency of the l86 module in Hz (1 - 10) +// uint8_t l86_wait_for_ack(void); // wait for acknowledge frame from l86 + +// struct RMC_msg l86_retreive_RMC(void) <= e.g. + +#endif +