|
Hello,
could it be that there is an error in the Livox example code to generate the 32bit CRC checksum?
while (((uintptr_t)data & 3) && len) {
crc = (crc >> 8) ^ CRC_TABLE_CRC32[(crc & 0xff) ^ *data++];
len--;
}
((uintptr_t)data is the address of the variable , and will change every run, and is device dependent. However, since everything is stored on even address numbers, this & 3 will always be 0 and the while will never be taken.
JeroenD
|
|