[En-Nut-Discussion] AD conversion resolution?

Lars Andersson lakab at telia.com
Sun Dec 18 11:35:43 CET 2005


Hi group,
being a mostly hardware guy I feel I might contribute 2 cents of opinion
here.

IMHO, what you see here is the result of noise uppsetting the comparator
of the internal SAR A/D converter in the atmega chip. As the SAR works
its way towards the LSB the voltage differences on the comparator
gets smaller and smaller and chances for a mistaken reading increases.

Considering how SAR works one comparator mistake at a low value bit,
say 3rd LSB, makes all bits of even lower value will be wrong and
also of the same value, either 1 or 0.

There are three ways (or more?)  to introduce noise in an SAR AD, signal,
reference and comparator power supply.

I am suggesting that the noise is possibly not on your signal or your
reference
but on your power supply to the analog part of the AVR chip (AVCC). 

I have got several good ideas from this group in the past, so hope this 
might help someone,

Lars H. Andersson






> -----Original Message-----
> From: en-nut-discussion-bounces at egnite.de 
> [mailto:en-nut-discussion-bounces at egnite.de] On Behalf Of 
> Arius - Rick Collins
> Sent: Saturday, 17 December, 2005 16:02
> To: Ethernut User Chat (English)
> Subject: Re: [En-Nut-Discussion] AD conversion resolution?
> 
> 
> At 06:11 AM 12/16/2005, you wrote:
> >Been investigating it a bit further based on the same data 
> and I found 
> >that the two major gaps in my data show a "funny" symmetry:
> >255 - 304 and 719 - 768 both have a gap of 49 and 255+768 = 
> 304+719 = 1023.
> >Been investigating the gaps in the data a bit more and to my 
> surprise, 
> >this symmetry occurs throughout the data: check out the plot 
> of the gaps 
> >versus the mean value of the two endpoints and the same data 
> mirrored in 
> >1023/2 which I added to http://130.161.167.171/ethernut.zip
> >
> >Anyone?
> 
> 
> I have looked at your data and it is a bit mystifying.  In 
> the one graph, I 
> believe I am looking at a time graph of data values as you sweep the 
> pot.  The first 40,000 readings look like they are with the pot 
> undisturbed.  Since you seem to get so much of a jump which 
> would be due to 
> noise, you could investigate that further without the 
> complication of the 
> wiper.  I see three (maybe four) discrete levels in this range.
> 
> Looking back at one of your original posts, it appears to me 
> that your data 
> bus may be scrambled.  If the data bus is serial, then I 
> suggest that you 
> look for a problem with timing in the data vs. clk.  If you 
> are clocking on 
> the wrong edge, you may see some problems like this.  I was almost 
> convinced that it was a mix up of the bits on the bus until I 
> looked at the 
> raw data and realized that the four lowest readings were 0, 
> 1, 3, 7 and 
> 15.  Yes, I know that was five values, I can't count.
> 
> I can't explain that sequence by a data bus scramble, but I 
> can explain it 
> by a problem with timing on a serial bus or possibly a 
> problem with the 
> voltage levels, pull up value or some other issue that would 
> result in a 1 
> bit smearing into other bit time windows.
> 
> 
> 
> _______________________________________________
> En-Nut-Discussion mailing list
> En-Nut-Discussion at egnite.de
> http://www.egnite.de/mailman/listinfo.cgi/en-nut-discussion
> 




More information about the En-Nut-Discussion mailing list