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.

ADS8330: ADS8330 will not configure properly

Part Number: ADS8330

I have been trying unsuccessfully to configure and verify the configuration register on the ADS8330.  From the data sheet and other documents it appears the SPI should be CPOL = 0, CPHA = 1.  When I try and write 0x5FD to the configuration register, I read back 0x9FA.  The waveforms are shown below.  Been fighting this for a bit so any help would be greatly appreciated. (Note: I have also tried CPHA = 0 with no luck there either)

  • Hello Tim,

    I think the output is correct, but you are not reading on the correct clock edge.

    The ADS8330 launches the MSB on the falling edge of chip select, and then launches the remaining bits on the falling edge of SCLK.  The ADS8330 also captures data on the falling edge of SCLK.

    When writing to the ADC, the host should update data on the rising edge of SCLK.  Also, when reading from the ADC, the host should capture data on the rising edge of SCLK as well.

    Reading the SDO pin on the rising edge of SCLK results in a register value of 0x4FD, which matches what you wrote to the register (ignoring the value of D8)

    I think you need to adjust your settings for the SPI port.  SPI mode 00 should work.

    Regards,
    Keith Nicholas
    Precision ADC Applications

  • Keith,

    Thank you very much for clarifying the data transfer operation of the ADS8330.  The problem turned out to be (mostly) the protocol analyzer.  Since the the ADS8330 does not obey the "rules" of standard SPI (data out on one edge, data in on the other) the protocol analyzer could not translate the data transfer properly.  However, with my microchip PIC18F controller set to "SPI1" (I believe this is what microchip calls SPI 00 - just to add to the confusion) I read in the 0x4FD as expected.  Thanks again for clarifying the data transfer operation - that got me out of the woods.

    Regards,

    Tim