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.

ADS1255: ADS1255/ADS1256 daisy chain

Part Number: ADS1255
Other Parts Discussed in Thread: ADS1256,

Hello,

I would like to use 8 chips of ADS1255 (or ADS1256 but without using the mux feature) in order to sampling 8 differential signals (strain gauge) with respect to their Ref voltages (8 refs). So my question is what do I need in order to:

1-synchronize the 8 chips to perform the acquisition in the same exact time?

2- Can I use daisy chain structure to read the data out of the 8 chips using single SPI interface (I can use CS line dedicated to each chip if needed)? if yes is thre any reference design? what would be the max SPS and how is it calculated?

Thank you in advance for your help.

Best regards  

  • Hi user5256242,

    Welcome to the TI E2E Forums!

    1. To synchronize all 8 ADCs...

      Issue the SYNC command to all ADCs at the same time. This will cause all of the devices to begin converting at about the same time, more or less...If there is any jitter or difference in the clock periods, there may be a slight difference in timing, but for most practical purposes this method is fine. I would just recommend using the SYNC SPI command (not the /SYNC GPIO pin) due to the very strict timing requirement of using the /SYNC pin.

      If however,  you cannot re-issue the SYNC command very often and/or you are concerned about clock jitter causing the ADC's to get out-of-sync over time, then you also need to provide a single shared clock to each ADC. This will keep all ADCs running in clock step together. Just take care to try and match the clock trace lengths so as to avoid any transmission line effects that might cause one ADC clock to get out-of-phase of another.
       
       

    2. The ADS1255/ADS1256 does not offer a "daisy chain" mode, in the sense that you cannot "chain" the SPI pins from one ADC to the next; however, you can connect all ADCs to the same SPI bus, assuming that each ADC has a separate /CS pin AND that you have sufficient time to read out data from all ADCs (in series) before the end of the conversion period (otherwise you'll lose data)...

      ...assuming the typical 7.68 MHz clock rate and the maximum SCLK frequency of 1.92 MHz (1 / 4th of fCLK), then you can roughly operate all ADCs at a maximum data rate of about 8 kSPS (this leaves just enough time for you to clock out 24-bits of data from all 8 channels sequentially). I would recommend providing additional timing margin and running the ADS125x at the 3.75 kSPS data rate, or slower, to allow for additional digital delays as needed.

    Unfortunately, we don't have a reference design that show this operation; however, it should be fairly straight forward to establish SPI communication with one device and then repeat your SPI read and write operations in a FOR loop for example.

    You can also "broadcast" a command ("WREG", for example) to all eight devices, assuming that you provide sufficient series resistance on each DOUT pin (in case some ADCs try to drive DOUT high, while others drive it low). This will work for all SPI commands where you don't care to read any data back from the ADC, but for reading registers or reading data you'll need to issue the appropriate command to each ADC in sequence.

     

    Best regards,
    Chris