projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ao-tools: Add ao-test-baro, ao-test-igniter and ao-test-flash
[fw/altos]
/
altoslib
/
AltosEepromGPS.java
diff --git
a/altoslib/AltosEepromGPS.java
b/altoslib/AltosEepromGPS.java
index 33172eed9825b5378b48567d6bd0d663ed30ac40..2514b4fcd2a2abeb5441f74008c1a50828d1fded 100644
(file)
--- a/
altoslib/AltosEepromGPS.java
+++ b/
altoslib/AltosEepromGPS.java
@@
-15,7
+15,7
@@
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
*/
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
*/
-package org.altusmetrum.altoslib_
4
;
+package org.altusmetrum.altoslib_
5
;
import java.io.*;
import java.util.*;
import java.io.*;
import java.util.*;
@@
-52,12
+52,17
@@
public class AltosEepromGPS extends AltosEeprom {
public int hdop() { return data8(23); }
public int vdop() { return data8(24); }
public int mode() { return data8(25); }
public int hdop() { return data8(23); }
public int vdop() { return data8(24); }
public int mode() { return data8(25); }
- public int state() { return data8(26); }
- /* AO_LOG_GPS_SAT elements */
- public int nsat() { return data16(0); }
- public int svid(int n) { return data8(2 + n * 2); }
- public int c_n(int n) { return data8(2 + n * 2 + 1); }
+ public boolean has_seconds() { return cmd == AltosLib.AO_LOG_GPS_TIME; }
+
+ public int seconds() {
+ switch (cmd) {
+ case AltosLib.AO_LOG_GPS_TIME:
+ return second() + 60 * (minute() + 60 * (hour() + 24 * (day() + 31 * month())));
+ default:
+ return 0;
+ }
+ }
public AltosEepromGPS (AltosEepromChunk chunk, int start) throws ParseException {
parse_chunk(chunk, start);
public AltosEepromGPS (AltosEepromChunk chunk, int start) throws ParseException {
parse_chunk(chunk, start);
@@
-91,7
+96,6
@@
public class AltosEepromGPS extends AltosEeprom {
break;
case AltosLib.AO_LOG_GPS_TIME:
state.set_tick(tick);
break;
case AltosLib.AO_LOG_GPS_TIME:
state.set_tick(tick);
- state.set_state(state());
gps = state.make_temp_gps(false);
gps.lat = latitude() / 1e7;
gps.lon = longitude() / 1e7;
gps = state.make_temp_gps(false);
gps.lat = latitude() / 1e7;
gps.lon = longitude() / 1e7;
@@
-117,16
+121,6
@@
public class AltosEepromGPS extends AltosEeprom {
gps.hdop = hdop();
gps.vdop = vdop();
break;
gps.hdop = hdop();
gps.vdop = vdop();
break;
- case AltosLib.AO_LOG_GPS_SAT:
- state.set_tick(tick);
- gps = state.make_temp_gps(true);
-
- int n = nsat();
- if (n > max_sat)
- n = max_sat;
- for (int i = 0; i < n; i++)
- gps.add_sat(svid(i), c_n(i));
- break;
}
}
}
}