how's the ADC in a MCU compares to others?

Thread Starter

bug13

Joined Feb 13, 2012
2,002
as the title says: how's the ADC in a MCU(AVR or PIC specifically) compares to other ADC in general?

are they about the same? better or worse than other standalone ADC in general?
 

Markd77

Joined Sep 7, 2009
2,806
I don't know about AVR, but midrange PICs (16F) are around 50-100KHz and 10 bit accuracy. There is only one ADC that can be connected to one of many pins so if you want to sample more channels the frequency drops.
Some of the higher PICs (24F and above) can come with ADCs up to 2MHz and more resolution.
 

ErnieM

Joined Apr 24, 2011
8,377
A standalone unit will typically have some outstanding characteristics when compared to a unit found inside a micro controller. That's just free market at work: no one would knowingly pay for a product when they can get one for free.

Currently I'm using a MCP3424 in a PIC project. It has 4 differential inputs,an on board reference with an accuracy of ± 0.05%. Not bad for 4 bucks single quantity.
 

ErnieM

Joined Apr 24, 2011
8,377
Oops,forgot to mention my biggest reason to use it: it can do up to an 18 bit conversion.

I need the bits. <grin>
 

WBahn

Joined Mar 31, 2012
30,060
As a rule, ADCs and DACs that are on standalone chips will have better performance because there is less digital goings on to inject noise into the measurement. Analog ICs are typically fabbed on different wafer substrates (bulk silicon) than digital circuitry. Analog substrates are chosen for noise performance while digital substrates (epitaxial silicon) are chosen for circuit compactness. Mixed signal chips are, by nature, a compromise. I suspect that most MCUs with ADCs or DACs on them use epi wafers and accept poorer performance from the analog circuits. Even if they use bulk substrates, the digital cells themselves are almost certainly not laid out to minimize noise injection into the substrate.
 

t06afre

Joined May 11, 2009
5,934
Oops,forgot to mention my biggest reason to use it: it can do up to an 18 bit conversion.

I need the bits. <grin>
But it does not help using a 18 or 24 bit ADC. If the design is bad and and full of noise. I think the reason for that most MCUs most often has 10 bits ADCs. Is the that internal noise make it hard to make something better and still keep the price down.
Ps Ernie ;) I do not imply in any way that your design is noisy or bad designed. I was speaking in general terms here
 

Thread Starter

bug13

Joined Feb 13, 2012
2,002
But it does not help using a 18 or 24 bit ADC. If the design is bad and and full of noise. I think the reason for that most MCUs most often has 10 bits ADCs. Is the that internal noise make it hard to make something better and still keep the price down.
Ps Ernie ;) I do not imply in any way that your design is noisy or bad designed. I was speaking in general terms here
agree, I am working on digital power supply for myself, and there are a few know fault on my design at ADC end, result? my 10bit ADC in my MCU is not nonperforming as it should be :(
 

MrChips

Joined Oct 2, 2009
30,808
Then you need to tackle one problem at a time.

What do you mean by "my 10bit ADC in my MCU is not nonperforming as it should be"?
 
Just as a simple suggestion, stabilise your A/D vref on your MCU. Do not tie this to voltage regulator main supply ...too noisy. Use an precision 3 pin voltage follower IC. You mention 10bit A/D. depending on your desired resolution... you can shift right 2 on your A/D result and you will get a fairly stable 8-bit value. (It drops off the jitters)
 

Thread Starter

bug13

Joined Feb 13, 2012
2,002
Then you need to tackle one problem at a time.

What do you mean by "my 10bit ADC in my MCU is not nonperforming as it should be"?
In It's reading, it should be between 0 to 1023, but it usually skip a few count at the LSB, eg it might read 0, 3, 4, 5, but can't read 1 or 2.

I'm useing a precision 2.048 Vref next to the Vref pin of the MCU of my choice, nothing else in between (maybe I should have a RC filter in between)

I don't know what cause it, I think it's my Vref is too high, it reads the voltage from the current resistor, should be between 0 to 0.1v.

I'm thinking I should amplify the voltage before it was feed to a ADC, I don't want to lower the Vref as it was by a DAC as well, which read 0 to 10v, the DAC shows perfect result, at least according my two cheap Chinese digital meters ;)
 

ErnieM

Joined Apr 24, 2011
8,377
A voltage reference will need a lot of cap on the output, say 1.0 uf or even more, see the data sheet. They are incredibly noisy without a big cap on the output.

If your input is 0.1V max then a 2.048V ref means your max scale reading for a 10 bit A2D is only about 50 counts, so an amplifier may well be in order.
 

Thread Starter

bug13

Joined Feb 13, 2012
2,002
A voltage reference will need a lot of cap on the output, say 1.0 uf or even more, see the data sheet. They are incredibly noisy without a big cap on the output.

If your input is 0.1V max then a 2.048V ref means your max scale reading for a 10 bit A2D is only about 50 counts, so an amplifier may well be in order.

this is the VREF I am using, it doesn't need a output cap:
http://www.ti.com/lit/ds/symlink/lm4040-n.pdf

The LM4040's advanced design eliminates the need for an external
stabilizing capacitor while ensuring stability with any capacitive load, thus making the LM4040 easy to use.
but I do need an amplifier in my next design, should have thought of that before I order I PCB:mad:
 

ErnieM

Joined Apr 24, 2011
8,377
By the time I do all the thinking and planning and checking to spin a PCB without building a prototype I could have built the prototype anyway, and eliminated at least one respin of the board (typically it takes me 2 to 3 spins to get it 100%).

Have you looked at your reference with a scope? Being "stable" is not the same thing as being quiet (low noise).
 

Thread Starter

bug13

Joined Feb 13, 2012
2,002
By the time I do all the thinking and planning and checking to spin a PCB without building a prototype I could have built the prototype anyway, and eliminated at least one respin of the board (typically it takes me 2 to 3 spins to get it 100%).

Have you looked at your reference with a scope? Being "stable" is not the same thing as being quiet (low noise).
I was a little too excited for my first PCB, so I went ahead and order the PCB (after a few weeks of reading PCB design, and tweaking the PCB), but I think I have learned my lesson from this mistake.

I have looked at the VREF with a scope, but I think the scope I have is too noisy anyway. the ripple voltage is about 2mV to 4mV.

but is shows 2mV to 4mV ripple as well even I just hook up a 1.5V battery.
 
Last edited:
Top