
Zitat von
der aller dümmste Anfänge
Warum 0x8C und nicht 0x99, da ja das 8., 5.,4 und 1. bit eine 1 sein soll?
Schau dir in der verlinkten App-Note das Ersatzschaltbild (Figure 2) an. Es sind die Bits 3 und 4, also 0x18. Auch zu erkennen am ASM-Beispielcode (XRL A,#18H ;update the CRC value). Warum bei mir dann 0x8c? Nun, der eigentliche Ablauf wäre:
Code:
crc ^= 0x18;
crc >>= 1;
crc |= 0x80;
Da ich das Verschieben vorgezogen habe, muss natürlich auch das 0x18 nach rechts verschoben werden, also 0x0c. Des weiteren kann man dann auch gleich das Setzen des höchsten Bits mit ins XOR rein nehmen, also 0x8c.
Lesezeichen