Sì, è l'uso del C che gli rompe.
Ho tramutato tutto in C++ e funziona perfettamente.
Lo sketch di esempio è qui:
#include "crc8.h"
void setup() {
byte myCrc8;
Serial.begin(19200);
delay(1000);
myCrc8 = CRC8.calculate("123456789", 9);
Serial.println("Calculate CRC on string 123456789");
Serial.print("CRC8 = 0x");
Serial.println(myCrc8, HEX);
}
void loop() {
}
la lib è come al solito (per i miei prodotti) GPL quindi potete farne quel che vi pare basta che rilasciate poi il vostro codice come GPL
crc8.zip (977 Bytes)