2018/06/18
Diff: GPS.cpp
- Revision:
- 4:41330399104d
- Parent:
- 3:940fe222bab0
--- a/GPS.cpp Wed Jun 13 06:54:42 2018 +0000 +++ b/GPS.cpp Fri Jun 29 04:25:20 2018 +0000 @@ -2,6 +2,9 @@ #include "GPS.h" GPS::GPS(PinName gpstx,PinName gpsrx): serial(gpstx,gpsrx){ + + Initialization(); + } void GPS::attach(void(*fn)()){ @@ -35,11 +38,11 @@ switch(info){ case 1: - time = strtof(DATA, NULL) + 90000.0; + time = strtod(DATA, NULL) + 90000.0; break; case 2: - fMinutes = modff(strtof(DATA, NULL), &latitude)*60.0; - latitude = latitude*100.0 + fMinutes; + Minutes = modf(strtod(DATA, NULL)/100.0, &latitude); + latitude = latitude + Minutes*10.0/6.0; break; case 3: if(!strcmp(DATA, "S")){ @@ -47,8 +50,8 @@ } break; case 4: - fMinutes = modff(strtof(DATA, NULL), &longtitude)*60.0; - longtitude = longtitude*100.0 + fMinutes; + Minutes = modf(strtod(DATA, NULL)/100.0, &longtitude); + longtitude = longtitude + Minutes*10.0/6.0; break; case 5: if(!strcmp(DATA, "W")){ @@ -88,7 +91,7 @@ longtitude = -1.0; latitude = -1.0; altitude = -1.0; - time = -1.0; - fMinutes = -1.0; + times = -1.0; + Minutes = -1.0; }