GPS working with LoRa code - can't transmit faster that once every 6 seconds
Dependencies: mbed LoRaWAN-lib_gps_lora SingleFrequencyLora
Diff: l86.cpp
- Revision:
- 5:850a9db98a41
- Child:
- 6:670ff1507ff4
diff -r 433e629dbeeb -r 850a9db98a41 l86.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/l86.cpp Sun Nov 12 23:34:19 2017 +0000 @@ -0,0 +1,40 @@ +#include "l86.hpp" +#include <string.h> + +void Parse_RMC_data(RMC_data RMC_data_parse){ + + //Local Variables + char RMC_message_copy[MAX_NMEA_LENGTH] = ""; + const char delimeter[2] = ","; + char *token = ""; + int i = 0; + char temp[11][12]; /* [11][12]: 11 strings, of length 12 */ + + //Copy original RMC sentence to a copy in order to not destroy message + strcpy(RMC_message_copy,RMC_data_parse.Message); + + //Seperated Message + /* get the first token */ + token = strtok(RMC_message_copy, delimeter); + + /* walk through other tokens */ + while( token != NULL ) + { + strcpy(temp[i],token); + i++; + token = strtok(NULL, delimeter); + } + + //Copy the message into its individual components + strcpy(RMC_data_parse.Message_ID,temp[0]); + strcpy(RMC_data_parse.UTC_Time,temp[1]); + strcpy(RMC_data_parse.Status,temp[2]); + strcpy(RMC_data_parse.Latitude,temp[3]); + strcpy(RMC_data_parse.N_S_Indicator,temp[4]); + strcpy(RMC_data_parse.Longitude,temp[5]); + strcpy(RMC_data_parse.E_W_Indicator,temp[6]); + strcpy(RMC_data_parse.Speed_Over_Ground,temp[7]); + strcpy(RMC_data_parse.Course_Over_Ground,temp[8]); + strcpy(RMC_data_parse.Date,temp[9]); + strcpy(RMC_data_parse.Mode,temp[10]); +} \ No newline at end of file