Hi, ein Gerät sendet die GPS Koordinaten auf einem CanBus. Was bekannt ist: Byte 0-3 für Latitude und Byte 4-7 Longitude. Little Endian. Beispielwerte: 07 123 165 30 243 54 17 04 200 121 165 30 185 53 17 04 136 121 165 30 19 53 17 04 130 118 165 30 59 44 17 04 Kann mir jemand sagen, wie man das "entschlüsselt"? Danke
:
Bearbeitet durch User
Filth _. schrieb: > 07 123 165 30 243 54 17 04 > 200 121 165 30 185 53 17 04 > 136 121 165 30 19 53 17 04 > 130 118 165 30 59 44 17 04 > > Kann mir jemand sagen, wie man das "entschlüsselt"? In umgekehrter Reihenfolge?! Ich gehe davon aus, dass die Daten an einer Stelle gemessen wurden. Schreibt man die so auf, dann ergeben sie etwas mehr Sinn: 30 165 123 07 04 17 54 243 30 165 121 200 04 17 53 19 etc. Wenn jetzt noch die Position bekannt wäre, wo die Daten aufgenommen wurden, käme man wieder einen Schritt weiter. Ich vermute eine Fließkommazahl (float hat 4 Byte?).
Habs schon gelöst: ist ein float int asIntLat = (Integer.valueOf(result[0]) & 0xFF) | ((Integer.valueOf(result[1]) & 0xFF) << 8) | ((Integer.valueOf(result[2]) & 0xFF) << 16) | ((Integer.valueOf(result[3]) & 0xFF) << 24); asIntLat *= 0.0000001f;
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.