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.

ADS1248: start a new conversion with START pin (SDATAC mode)

Other Parts Discussed in Thread: ADS1248

Hi all,

 i use  up to 6 ADS1248 on the SPI bus and want to cyclic (40 SPS) start  conversions synchronized for all ADCs via START pin

I cannot observe the DRDY\ pin in my HW design, so i use the SDATAC mode to be able to readout the conversion results (always waiting until the max. conversion time (~26 ms) elapsed).

Now my question:

Is it possible to enforce a new data conversion (by a START high pulse or edge) even if a (possible running) current conversion has not finished?

Or with other words:

see the data sheet (JUNE 2011), fig. 70 (SLEEP and WAKEUP): What happens, if i start a new conversion before DRDY\ becomes low?

Actually i process as followed:

1. Power-Up (and wait > 16ms)

2. reset (by RESET\ line and wait > 0,6ms)

3. set START = 1

4. basic init all ADCs (write, readback and verify some ADC registers)

5. start SELFOCAL for all ADCs (and wait > 401 ms), readout OFC and FSC registers of all ADCs

6. setup all ADCs for measuring the first input channel

7. start (one) conversion by apply  a (very short) START low-pulse (i.e. START = 1 afterwards) !!

8. wait until conversion time (~26 ms) elapsed

9. readout conversion data + setup registers for measuring the next channel, for all ADCs. -> but meanwhile the ADCs do the next conversion! -> Is this a problem or should i set START = 0 until next step??

10. start (one) conversion ... and so on (always measuring another input channel or system monitor channel)

-----

Actually all seems OK. But I'am not shure if this process is really "save", in order not to readout data from a wrong channel!?

Thanks very much,

Markus.

  • Markus,

    Welcome to the forum!  If you pulse the START pin and then bring START high before the first conversion is complete, the ADS1248 will continue to convert, it will not stop.  You can read from the device with the START pin low, but you cannot write the MUX change.  It all becomes a little bit more difficult if you are changing the MUX and it will take a little more time to complete.  The procedure would be similar to as follows:

    1. Pull START pin high and write desired MUX to each device.

    2. Pull START pin low and wait until previous conversion is complete.

    3. Pulse START to synchronize the conversions.

    4. Wait for conversion to completed.

    5. Read the data from the devices with START held low.

    6. Go back to 1 with new MUX change.

    Best regards,

    Bob B

     

  • Thank you Bob for your answer!

    Regarding your procedure: pulse START is only required the first time (initial sequence), I think !?; if this conversion (with the right settings) has finished (and ADCs are in SLEEP mode), the further cyclic procedure can be:

    1. Pull START pin high (start timer for waiting conversion time) + readout the last conversion data (all ADCs) + write (MUX) for next channel to each device.

    2. Pull START pin low and wait until previous conversion is complete.

    3. Go back to 1.

    Is this correct?

    Best regards,

    Markus.

  • Markus,

    This will work, but not if you want the readings from each device to be synchronized as there will be a time delay from one device mux change to the next.  The second pulse of the SYNC pin will re-initiate the conversion for all devices at the same time.  If this is not important, then you can follow the scheme you mention.

    Best regards,

    Bob B