This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[FAQ] LMP90100: CRC value reading as zeroes

Part Number: LMP90100
Other Parts Discussed in Thread: LMP90099, LMP90098, LMP90097, LMP90080, LMP90079, LMP90078, LMP90077, LMP90080-Q1

Tool/software:

Hi,

I'm enabling the CRC function in my LMP90100, but I'm only reading zeroes when I read the SPI_CRC_DAT (address 0x1D) register.

  • Hi,

    The reset value of the SPI_CRC_DAT register is zero.

    The CRC is automatically reset when CSB or DRDYB is de-asserted.

    This means the SPI_CRC_DAT register will reset back to zero if the ADC data (registers 0x1A, 0x1B, 0x1C) is read on a separate SPI frame prior to reading the CRC value.

    The CRC value should be read in the same SPI frame immediately after the ADC conversion data registers. 

    Conveniently, the SPI_CRC_DAT register address is located next to the ADC_DOUT register address so that the CRC value can be easily read as part of the data set.

    Simply write 0x3 to the SZ field and send clocks to do a 4-byte read (streaming mode) starting at the 0x1A address, before de-asserting CSB.

  • This information applies to the entire family of devices, which includes:

    • LMP90100
    • LMP90099
    • LMP90098
    • LMP90097
    • LMP90080
    • LMP90079
    • LMP90078
    • LMP90077
    • LMP90080-Q1

    Best Regards,

    Angel