ADS1256: ADS1256 keep showing 0 value on the Arduino serial monitor

Part Number: ADS1256


 

I have designed an ADS1256 breakout board to interface with a Teensy 4.0 controller via the SPI protocol. I uploaded the code to the controller and tried to read data from the ADC input pins. However, the serial monitor always shows 0, even when testing with floating (unconnected) pins.

For reference, the same code works correctly with a commercially available ADS1256 breakout board (for example, this one on Amazon https://www.amazon.in/CALANDIS-Ads1256-Channel-Precision-Acquisition/dp/B0BQ3J9N9C), where it successfully fetches data from the input pins.

I am unable to figure out the issue with my custom-designed board. I am attaching the schematic here — could someone please help me identify the problem in the circuit design?

first one is schematic of commercially available ADC board, second is the customm design for three channels

0508.ADS1256.PNGadc.PNG

  • Hello Elsa,

    I do not see any direct schematic errors.  However, it is always possible one of the net labels is not spelled correctly and the signal is not actually connected to the ADC.

    I would suggest using a DMM and verifying all voltages are correct at the ADC device pins.  RESET, SYNC should measure 3.3V, along with DVDD.  AVDD should be 5V.  The reference should be 2.5V based on your schematic.

    Also, if you do not have the exact same crystal part number, the load capacitors may need adjusted for the clock to startup properly.  If you have a scope or logic analyzer, verify that the clock is oscillating at 7.68MHz on the D0/CLKOUT pin.

    Regards,
    Keith Nicholas
    Precision ADC Applications