ADC measurement issue

Thread Starter

RenesasT1

Joined Jul 6, 2017
107
Hello All,

I am interfacing ADS1501 12 bit ADC with controller. I am getting proper o/p form 0 to 0x7fffh with variable POT of 1k,5ketc.

Now thing is that 12 bit ADC should get result o/p upto 0x1000h but I am not getting that much of value.

My supply voltage is 5V and I have used 10kohm resistors to pull up SDA and SCL lines.

Please support me.
 

AlbertHall

Joined Jun 4, 2014
12,346
I cannot find any data for ADS1501. Is this the correct number?
Is this ADC designed to accept positive and negative voltages? If it is that would account for the missing negative values 0x800 to 0xfff.
 

nsaspook

Joined Aug 27, 2009
13,277
8.5.4 Data Format

The ADS101x provide 12 bits of data in binary two's complement format that is left justified within the 16-bit data word. A positive full-scale (+FS) input produces an output code of 7FF0h and a negative full-scale (–FS) input produces an output code of 8000h. The output clips at these codes for signals that exceed full-scale. Table 3 summarizes the ideal output codes for different input signals. Figure 18 shows code transitions versus input voltage.

https://www.intersil.com/content/dam/Intersil/documents/an96/an9657.pdf
https://www.cs.cornell.edu/~tomf/notes/cps104/twoscomp.html
 
Last edited:

Thread Starter

RenesasT1

Joined Jul 6, 2017
107
Hello everyone,

Can you please suggest me single ended o/p ,I2C compatible ADC
24bit,16bit

I dont need negative values.

It will be more helpful for me.
 

be80be

Joined Jul 5, 2008
2,072
24bit,16bit
You do understand that to get values in that range is out of scope for home made boards you can't just
plug a 24 or 16 bit chip in a bread board and get 24 or 16 bit readings.
 

Thread Starter

RenesasT1

Joined Jul 6, 2017
107
Yes I will Put 16 bit and 24 bit ADC.

Can you please suggest me with following specs,
single ended o/p ,I2C compatible ADC
 

GopherT

Joined Nov 23, 2012
8,009
Yes I will Put 16 bit and 24 bit ADC.

Can you please suggest me with following specs,
single ended o/p ,I2C compatible ADC
What fraction of a millivolt will your 16 bit ADC measure? What design tricks are you using to prevent noise in the system or picked up by the system to insure noise does not interfere with your 16-bit measurements?

Now, repeat for 24-bit and answer in terms of fractions of a microvolt (abou 300 Nanovolts at the least significant bit on 5V full-scale). 16-bit measurement will be 75-microvolts at the least significant bit on a 5-volt full scale.
 

dendad

Joined Feb 20, 2016
4,476
What are you trying to measure?
Do you understand the comments above re so many bits reading small fractions of volts?
Your circuit will have to be extremely well designed to make use of so many bits, and the reference volts needs to be better still. All the resistors need to be extremely good and stable. It is not something that you can toss together and get good useable readings. Start with a 10 or 12bit one and see if you can make that stable for a start. The more bits the harder it is. The most I have used is 18bits and that had some really good stability resistors that cost quite a bit each. And a decent voltage reference to boot.
 

Thread Starter

RenesasT1

Joined Jul 6, 2017
107
What fraction of a millivolt will your 16 bit ADC measure? What design tricks are you using to prevent noise in the system or picked up by the system to insure noise does not interfere with your 16-bit measurements?

Now, repeat for 24-bit and answer in terms of fractions of a microvolt (abou 300 Nanovolts at the least significant bit on 5V full-scale). 16-bit measurement will be 75-microvolts at the least significant bit on a 5-volt full scale.
Hello GopherT,

I wanted to measure 0.00007V (or less than this) for 1 digital value . That is why I wanted to use either 16 bit or 24 bit ADC. But I need single ended, I2C compatible and non FSR(I need only positive voltage range i.e. 0-5V) functioned ADC. For noise I am using low pass filter.
 

Thread Starter

RenesasT1

Joined Jul 6, 2017
107
What are you trying to measure?
Do you understand the comments above re so many bits reading small fractions of volts?
Your circuit will have to be extremely well designed to make use of so many bits, and the reference volts needs to be better still. All the resistors need to be extremely good and stable. It is not something that you can toss together and get good useable readings. Start with a 10 or 12bit one and see if you can make that stable for a start. The more bits the harder it is. The most I have used is 18bits and that had some really good stability resistors that cost quite a bit each. And a decent voltage reference to boot.
Hello dendad,

I was working with AD121C021 ADC which is of 12 bit. I was trying to configure and I got success. But the result is varying in three values. Suppose POT is connected to the i/p and POT is at zero value then I am getting sometimes 0,sometimes 1, sometimes 3 in o/p which is fluctuating continuously only in between this 3 values. Simmilarly if POT is moved the values ate also increasing but varying between 3 values only.

Secondly, I was working with ADS1015. This is also 12 bit ADC and I am getting very good result without any fluctuation. I am bit happy with that but this IC has FSR facility by which I am not getting maximum value i.e. 4095(my value is limited to 2046 only) . By using this IC, I am able to get 0.0011V for 1 digital value but I need 0.00007V or below for 1 digital value.

Please suggest me.
 

Thread Starter

RenesasT1

Joined Jul 6, 2017
107
I have 5K and 1K POT. The lowest resistance is nearly to 0ohm. That is when resitance is 0 resistance then I am getting 4.99V at variable point if I am applying 5V.

By using 10 bit ADC,the same POT is giving 0 when POT is 0 and high value i.e.1023 when POT is high.

POT is not full turntable.
 

ebeowulf17

Joined Aug 12, 2014
3,307
I haven't worked with a wide variety of ADCs, but I've played with MCU built-in ADCs a lot, and I've used the ADS1015 and ADS1115 quite a bit.

I agree with the others that, unless you're paying close attention to supply voltage stability and certain other layout considerations, you're going to have a hard time getting a meaningful 16 bits out of each sample. If you can afford a few extra ADC cycles (in other words, if you don't need super-high sample rates or incredibly short capture times,) then over-sampling would be a great way to clean things up and get extra resolution...

And since you should probably consider going that route anyway, who cares about one missing bit: go with the ADS1115, a chip you already know (16 bit version of the 12 bit ADS1015 you're already working with.) It's effectively 15 bits when measuring only positive voltages, but I bet with over-sampling you'll get the results you need!
 

Thread Starter

RenesasT1

Joined Jul 6, 2017
107
Thank you for the suggestion.

Can you please tell me following things,

1) what is oversampling.? if last bit is continuously will get fluctuated then it is hard to get proper result.
2) Does ADS1115 has FSR. I dont need FSR.
3) Does it single ended o/p?
4) does it suitable for I2C?
 

be80be

Joined Jul 5, 2008
2,072
The more you take the better your reading.
You can take as many as you like I'd try 10.
Do you really know what FSR means ?
Offset Error value is usually specified using one of the following units: Volts, Least Significant Bits (LSB), %Full Scale Value (%FSV), and parts per million (ppm). FSV is sometimes also referred to as FSR (Full Scale Range). Parts per million (ppm) is usually associated with the actual unit, for example, 1 ppm of 1 V = 1 µV.
This is a good read http://www.atmel.com/images/doc8003.pdf
 
Last edited:
Top