Hallo! Könnte mir bitte jemand erklären, wie in einem IntelHex-File die Prüfsumme (checksum) berechnet wird. Denn alles was ich bis her gefunden habe, hat mir nicht wirklich weiter geholfen.+ Danke
Alle Bytes einer Zeile inklusive der Adress- und Record-Bytes werden aufaddiert, dann wird 255 minus die Summe +1 gerechnet (oder 0 minus Summe, 8Bit).
Das waere dann das Zweierkomplement. Heisst, alles, inklusive die checksummer aufaddiert sollte null ergeben.
Danke! Habs nach längerem Suchen auch eine Verständliche Erklärung gefunden. Einfach alles außer dem ":" und der Checksumme zusammenzälen (die Adresse auch in 2 Bytes aufteilen). Die erhaltene Summe dann Modulo 256. Den erhaltenen Wert dann von 256 subtrahieren und man hat die Checksumme.
Auch wenn das Thema schon etwas älter ist, habe ich es grad gelesen und für alle, die mir folgen: Die Variante von Knut stimmt, die von HTBL hat bei mir bei ca. einem Dutzend Versuchen nicht funktioniert!!!
der Beitrag ist zwar schon älter aber warum einen neuen aufmachen wenn der das Thema absolut trifft. Mich würde es interessieren ob es nur Zeilenweise eine Prüfsumme gibt oder wird am Ende des .hex Files nochmal eine gesammte aus ausgerechnet? Da ich ein .hex File patchen will, muss ich die Checksumme wieder anpassen.
:
Bearbeitet durch User
Hi >Mich würde es interessieren ob es nur Zeilenweise eine Prüfsumme gibt Ja. >oder wird am Ende des .hex Files nochmal eine gesammte aus ausgerechnet? Nein. MfG Spess
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.