26 lines
513 B
Plaintext
26 lines
513 B
Plaintext
Mobis CRC °è»ê
|
|
|
|
void write_i2c_with_crc_test(const uint8 *data, uint32 length, IicSlaveConfigPtr LpSlaveConfig) {
|
|
|
|
//uint8 buffer[256]; // Ensure this is large enough
|
|
|
|
if (length + 2 > sizeof(buffer)) return; // Prevent overflow
|
|
|
|
// Copy data
|
|
|
|
for (uint8 i = 0; i < length+1; ++i) {
|
|
|
|
buffer[i] = data[i];
|
|
|
|
}
|
|
|
|
// Calculate and append CRC
|
|
|
|
buffer[length+1] = crc8(data, length+1);
|
|
|
|
// Send data + CRC over I2C
|
|
|
|
CddIic_Ch5Write(&buffer[1], length+1, LpSlaveConfig);
|
|
|
|
}
|