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.

Compiler/ADS8513: Regarding ads 7952 Mode control register address

Part Number: ADS8513

Tool/software: TI C/C++ Compiler

Hello everyone:

      Here's a question about the out put data of the device. When I collect voltages data in the ±10V,  the result supposed to be like this according to the reference book:

----------------------------------
LSB: 152uV
+Full-scale: 9.999848V -> 7FFF
Midscale: 0V -> 0000
One LSB below midscale: -0.000002 -> FFFF
-Full-scale: -10V -> 8000
----------------------------------

However, the real data goes like this:

----------------------------------
LSB: 152uV
+Full-scale: 9.999848V -> FFFF
Midscale: 0V -> 0000
One LSB below midscale: -0.000002 -> FFFF
-Full-scale: -10V -> 0000
----------------------------------

It's strange isn't it? Seems like the highest bit is not the symbolic bit or stuff.

Did I do sth wrong? Please help me .

Thank you so much.

Best whishes

  • Hi Duo,

    welcome to E2E forum.

    Can you please check and show the conversion code for other input voltage (0~+10V and -10V~0V)?

    One possible reason is, the code you got was shifted to the lowest  bit for one bit. What's your CPOL and CPHA for SPI? Are you using external or internal DATACLK? Can you please show a timing plot for your actual DATACLK, DATA, /BUSY and /CONV with an oscilloscope? It will be very helpful to address the issue.

    Thanks.

    Best regards

    Dale