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

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren