CRC-8 mit Initial value

Gast #6151215
Lesenswert?
• ▲
▼
Hallo,

kann mir bitte jemand helfen einen CRC-8 mit Startwert zu berechen. 
Folgendes habe ich, ohne Startwert verstanden:

Polynominal(Grad8):   0x107 -> 100000111
Data:       0x05C ->  01011100
Initial value:    0x000
XOR Value:    0x000

  0101110000000000
  000000000
   101110000
   100000111
     111011100
     100000111
      110110110
    100000111
     101100010
     100000111
       110010100
       100000111
        10010011  -> Rest -> 0x93

Vergleiche ich das Ergebnis auf 
http://www.sunshine2k.de/coding/javascript/crc/crc_js.html bekomme ich 
ebenfalls 0x93 heraus.

Jetzt möchte ich den CRC mit Startwert berechnen:

 Mit Startwert

Polynominal(Grad8):   0x107 -> 100000111
Data:       0x05C ->  01011100
Initial value:    0x0FF
XOR Value:    0x000

  111111110101110000000000
  100000111
   111110011
   100000111
    111101000
    100000111
     111011111
     100000111
      110110001
    100000111
     101101101
     100000111
       110101000
       100000111
        101011110
      100000111
        101100100
        100000111
          110001100
        100000111
         100010110
         100000111
            01000100  -> Rest -> 44    Kann nicht sein!


Laut http://www.sunshine2k.de/coding/javascript/crc/crc_js.html ist der 
CRC gleich 0x60.

Was mache ich bei der berechnung mit Startwert falsch?
#7673830
Lesenswert?
• ▲
▼

Hallo, mein Fehler war, dass ich mit 111 dividiert habe. Nach dem durchforsten der Seite

http://www.sunshine2k.de/articles/coding/crc/understanding_crc.html

fand ich dann diesen Hinweis:

A CRC-8 with polynomial 0x07 is actually the value 100000111 = 1x8 + 0x7 + 0x6 + 0x5 + 0x4 + 0x3 + 1x2 + 1x1 + 1*x0.

Damit klappt es dann auch. Also acht Nullen angehängt und dann immer XOR. Am Ende kommt dann 10010011 also 0x93 heraus.

Auf einem 8-Bit µC werde ich dann wohl eine Lookup-Tabelle verwenden.

Gruß Holger

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.