Hello,
I am using PRU CRC16/32 module for communication data check with CRC16 (x16+x15+x2+1 ) mode.
I found that the accumulated CRC output results do not match to the CRC16 online tool.
For example, I pushed 0x1304 into CRC16 and get 0xc2b9 as the results, but the correct result should be 0xf30c.
Below is the programming code:
; CRC16 enable.
ldi32 r20, 0x00001304 ; original data
ldi r25.b0, 0 ; config CRC type
xout 1, &r25, 1
mov r29, r20 ; load CRC data
xout 1, &r29, 2 ; push CRC data to CRC16 module
nop
xin 1, &r29, 4 ; load the accumlulated CRC result into PRU
May I have your comments?
BR,
Chen