Other Parts Discussed in Thread: ADS7066
I'm writing a driver for ADS7138. I still don't have the HW and would like to speed up the development time, so I cannot do any experiments that would help me to understand the device at this point.
I have few questions regarding the CRC module because I don't know if I understand it correctly:
1) Power up CRC - does it mean that the device computes CRC on expected default values and asserts a failure (CRC_ERR_FUSE) if it does not match preprogrammed value?
2) Writing into ADS7138 - does it mean that whenever I write some data and ADS7138 CRC is enabled, I need to append CRC of the byte being written? So when I write one byte into GENERAL_CFG I need to send actually two bytes via I2C (GENERAL_CFG value plus its CRC)?
3) Reading data from ADS7138. The general information in the datasheet says that CRC is also for output data. I don't see any config bit that enables output CRC. And if this is enabled, does it mean that reading from RECENT_CH0_LSB will return RECENT_CH0_LSB value + its CRC byte? Could I use the burst register read even when the CRC is activated?