SLLA664 March 2025 MCF8315A , MCF8315C , MCF8315C-Q1 , MCF8315D , MCF8316A , MCF8316C-Q1 , MCF8316D , MCF8329A , MCT8315A , MCT8316A , MCT8316A-Q1 , MCT8329A
MCx devices support an optional CRC to verify the I2C packet data integrity. An 8-bit CCIT polynomial ( (x8 + x2+ x + 1) with an initial value of 0xFF is used to calculate the CRC value. The CRC feature helps identify any data corruption in the I2C packet. When CRC is enabled for a read operation, MCx calculates the 8-bit CRC for the entire packet (Target ID + Write bit, Control Word (3 bytes), Target ID + Read bit, Data Bytes (2/4/8 bytes)) and appends the CRC at the end of packet; the primary I2C device (host) reading the data from MCx device can verify the CRC by comparing the received CRC (from MCx) against the calculated (by host) CRC. When CRC is enabled for a write operation, primary I2C device (host) writing data into MCx device needs to append the calculated 8-bit CRC for the entire packet (from Target ID + Write bit, Control Word (3 bytes), Data Bytes (2/4/8 bytes)) at the end of I2C data packet; I2C packet can be ignored in case of wrong or missing CRC (when enabled).
Refer device data sheet for detailed explanation on I2C packet communication using CRC.