Servus, ich habe mal eine Frage kann es leider nirgends finden. Wie genau berechnet man die GPS Prüfsumme ? Ich weiss das sie als XOR vom $ bis zum * berechnet wird, aber nicht genau wie... ich muss in ANSI C ne funktion schreiben die die Prüsummer berechnet, sprich mir fehlt nur das was hinterm * steht das muss ich berechnen weiss nur nicht wie :-( kann mir das einer mal mit beispiel erklären, oder gibts das irgendwo schon beschrieben ? wäre super danke
Also eine kurze Suche im Inet per Google ergibt also folgende genauere definition der Checksumme: <The optional checksum field consists of a "*" and two hex digits representing the exclusive OR of all characters between, but not including, the "$" and "*".> kurz danach hab ich den folgenden Sourcecode gefunden ' Calculates the checksum for a sentence Public Function GetChecksum(ByVal sentence As String) As String ' Loop through all chars to get a checksum Dim Character As Char Dim Checksum As Integer For Each Character In sentence Select Case Character Case "$"c ' Ignore the dollar sign Case "*"c ' Stop processing before the asterisk Exit For Case Else ' Is this the first value for the checksum? If Checksum = 0 Then ' Yes. Set the checksum to the value Checksum = Convert.ToByte(Character) Else ' No. XOR the checksum with this character's value Checksum = Checksum Xor Convert.ToByte(Character) End If End Select Next ' Return the checksum formatted as a two-character hexadecimal Return Checksum.ToString("X2") End Function siehe auch: http://www.codeguru.com/vb/gen/vb_system/win32/article.php/c8079__3/ Hilft dir das ? Gruss
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.