// this uses the same polynomial as the built-in MODBUS, but it uses an initializer of zero whereas the built-in
// MODBUS uses 0xFFFF. This link gives example C code for generating a MODBUS CRC and it agrees with FastCRC.
// http://www.ccontrolsys.com/w/How_to_Compute_the_Modbus_RTU_Message_CRC
//CRC-16-IBM
crc = CRC16.generic(0x8005, 0, CRC_FLAG_REFLECT, buf, sizeof(buf));
printVals("IBM", 0xbb3d, crc);
//CRC-16-DECT
crc = CRC16.generic(0x0589, 0, CRC_FLAG_REFLECT, buf, sizeof(buf));
printVals("DECT", 0xcab0, crc);
//CRC-32C - Castagnoli
crc = CRC32.generic(0x1EDC6F41, 0xffffffff, CRC_FLAG_REFLECT | CRC_FLAG_XOR, buf, sizeof(buf));
printVals("CRC-32C", 0xE3069283, crc);
//CRC-32K - Koopman
crc = CRC32.generic(0x741B8CD7, 0xffffffff, CRC_FLAG_REFLECT | CRC_FLAG_XOR, buf, sizeof(buf));
printVals("CRC-32K", 0x2D3DD0AE, crc);