andrax - 2023-03-21

Hallo Ich bekomme ein Datenblock mit 3Byte zurΓΌck wobei das letzte Byte die Checksumme ist.
[16#01,16#48,16#F1]

Im Datenblatt sind folgende Werte angegeben:
Name CRC-8
Width 8 bits
Polynomial 0x31 (x8 + x5 + x4 + 1)
Initialization 0xFF
Reflect input false
Reflect output false
Final XOR 0x00

mein Code:
CRC := oscat_basic.CRC_GEN(PT:=ADR(raw_Read_CHIP_ID), size:=SIZEOF(raw_Read_CHIP_ID)-1,
PL:=8,
Pn:=16#31,
init:=16#FF,
XOR_out:=16#00,
rev_in:=0,
rev_out:=0);

Ich bekomme beim CRC aber 16#00000031 zurΓΌck.
wo liegt mein Fehler?