return ( crc->state ^ crc->final_xor ) & crc->mask;
}
-uint32_t CRC8Maxim(uint8_t *buff, size_t size) {
-
+//credits to iceman
+uint32_t CRC8Maxim(uint8_t *buff, size_t size)
+{
crc_t crc;
crc_init(&crc, 9, 0x8c, 0x00, 0x00);
- for ( uint8_t i = 0; i < size; ++i){
+ crc_clear(&crc);
+
+ for (size_t i=0; i < size; ++i){
crc_update(&crc, buff[i], 8);
}
return crc_finish(&crc);
-}
\ No newline at end of file
+}