Forum: Mikrocontroller und Digitale Elektronik Stabilität der Referenzspannung bei ATmega & Co.


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von F. P. (pl504)


Bewertung
0 lesenswert
nicht lesenswert
Zur Stabilität der internen Referenzspannung von Atmel-µC schweigen sich 
die Datenblätter aus - zumindest habe ich nichts gefunden. Weiß jemand, 
wie temperaturstabil (ppm/K) die Referenzspannung ist?

von spess53 (Gast)


Bewertung
2 lesenswert
nicht lesenswert
Hi

>Zur Stabilität der internen Referenzspannung von Atmel-µC schweigen sich
>die Datenblätter aus - zumindest habe ich nichts gefunden.

Es gibt auch noch AppNotes:

AVR353: Voltage Reference Calibration and Voltage ADC Usage

MfG Spess

von F. P. (pl504)


Bewertung
0 lesenswert
nicht lesenswert
Danke, das hilft mir weiter.

von Gerhard (Gast)


Angehängte Dateien:

Bewertung
2 lesenswert
nicht lesenswert
Und es gibt sowas im Datenblatt

von F. P. (pl504)


Bewertung
0 lesenswert
nicht lesenswert
Tatsache. Ist nicht bei jedem µC-Datenblatt zu finden...

Mal eine andere Frage: Wie sieht es mit der Temperaturabhängigkeit des 
ADC-Eingangswiderstands aus? Im Datenblatt sind z.B. 100M als Nennwert 
angegeben.

von Dietrich L. (dietrichl)


Bewertung
3 lesenswert
nicht lesenswert
F. P. schrieb:
> Mal eine andere Frage: Wie sieht es mit der Temperaturabhängigkeit des
> ADC-Eingangswiderstands aus? Im Datenblatt sind z.B. 100M als Nennwert
> angegeben.

Da wirst Du wohl nichts finden.
Zusammen damit, dass Atmel für das Analogsignal einen maximalen 
Innenwiderstand von 10kOhm empfiehlt ist in dem Fall die 
Temperaturabhängigkeit des Eingangswiderstand ziemlich sicher 
vernachlässigbar.

von F. P. (pl504)


Bewertung
0 lesenswert
nicht lesenswert
10k || 100M ist schon verdammt niederohmig. Ich könnte mal die SMU 
dranhängen (da geht's runter bis 10 pA), um zu sehen, wie sich der 
Eingang benimmt...

von Varg (Gast)


Bewertung
0 lesenswert
nicht lesenswert
F. P. schrieb:
> 10k || 100M ist schon verdammt niederohmig. Ich könnte mal die SMU
> dranhängen (da geht's runter bis 10 pA), um zu sehen, wie sich der
> Eingang benimmt...

10 kOhm || 100 MOhm ergibt ca. 9,999 kOhm. Wieso ist das verdammt 
niederohmig?

von F. P. (pl504)


Bewertung
0 lesenswert
nicht lesenswert
Der ADC hat 100M Eingangswiderstand. Wenn die Quelle höchstens 10k haben 
darf/soll, ist das im Vergleich zum Eingang verdammt niederohmig 
angesetzt.

von S. Landolt (Gast)


Bewertung
2 lesenswert
nicht lesenswert
Der S&H-Kondensator muss geladen werden, im Datenblatt ist das unter 
"Analog Input Circuitry" zu finden.

von Manfred (Gast)


Bewertung
2 lesenswert
nicht lesenswert
F. P. schrieb:
> Der ADC hat 100M Eingangswiderstand. Wenn die Quelle höchstens 10k haben
> darf/soll, ist das im Vergleich zum Eingang verdammt niederohmig
> angesetzt.

Ja, weil der Kondensator im A/D zügig geladen werden will:
http://www.itwissen.info/Dual-Slope-Verfahren-dual-slope-methode.html

von F. P. (pl504)


Bewertung
1 lesenswert
nicht lesenswert
Eingang mit einem anständigen C abblocken. Der S&H-Kondensator "klaut" 
daraus natürlich bei jeder Messung Ladung, also zieht er den bei zu 
hochohmiger Speisung über kurz oder lang vermutlich leer. Die 100M 
beziehen sich vermutlich auf den Leerlauf, wenn nicht "gesämpelt" wird.

von Norbert (Gast)


Bewertung
0 lesenswert
nicht lesenswert
F. P. schrieb:
> Eingang mit einem anständigen C abblocken. Der S&H-Kondensator "klaut"
> daraus natürlich bei jeder Messung Ladung,

Macht er das wirklich? Wenn die zu messende Spannung bei allen 
Folgemessungen gleich bleibt? Ich bin da nicht sicher. Der 
S&H-Kondensator wird doch benötigt um während der Messung einen stabilen 
Pegel sicher zu stellen. Warum sollte er nach der Messung entladen 
werden?

Und wenn die Messspannung fluktuiert und die Versorgung hochohmig ist, 
wird ein "anständiger" Kondensator Einiges flach bügeln.

> also zieht er den bei zu
> hochohmiger Speisung über kurz oder lang vermutlich leer. Die 100M
> beziehen sich vermutlich auf den Leerlauf, wenn nicht "gesämpelt" wird.

von F. P. (pl504)


Bewertung
0 lesenswert
nicht lesenswert
Wer sagt denn, daß vor der S&H-Schaltung nicht noch ein Impedanzwandler 
sitzt? Dann wäre eine hochohmige Quellimpedanz statthaft, da sie ja von 
dem S&H-Kondensator nix mitbekommt.

: Bearbeitet durch User
von Jacko (Gast)


Bewertung
3 lesenswert
nicht lesenswert
Schaust du dir die Diagramme "Bandgap Voltage vs. VCC" an,
so ist bei stabiler Betriebsspannung etwa 0,1% Variation über die
Temperatur drin - das entspricht einem LSB des internen 10-Bit-ADC.

Mit der Speisespannung von min...max kommt noch ein LSB dazu.

Das sind etwa 0,2% vom Endwert - für "mitgeliefert" nicht schlecht!
Abgesehen von der Nichtlinearität des ADC (steht auch im Datenblatt).

Wozu brauchst du 100 MOhm am ADC-Input, wenn da ein Sample-
Kondenstor von 20...30 pF in einigen µs auf > 99,9% der
Eingangsspannung geladen werden muss?
- Genau: Daher die Forderung, dass die zu messende Spannung mit
  einem Ri <= 10 kOhm angelegt werden sollte.

Wonach du nicht gefragt hast, ist der Leckstrom des ADC-Eingangs!

Der vermasselt nämlich den Trick, ein hochohmig (> 100 kOhm)
vorliegendes Signal, dass sich nur langsam ändert, mit C > 33 nF
(C > 1000 x C-Sample) für die Sample-Belastung zu stabilisieren!

von Joachim B. (jar)


Bewertung
-1 lesenswert
nicht lesenswert
F. P. schrieb:
> Zur Stabilität der internen Referenzspannung von Atmel-µC schweigen sich
> die Datenblätter aus - zumindest habe ich nichts gefunden. Weiß jemand,
> wie temperaturstabil (ppm/K) die Referenzspannung ist?

hallo PL504 (warum nicht PL519 oder PL36?)

wie stabil die Ref ist weiss ich nicht, das könnte man aber feststellen 
weil ich nun lernte es gibt eine interne Temperaturreferenz, da könnte 
man die Temperatur von aussen mal "durchfahren" und diese Ref. ja dabei 
messen und anschliessend kalibrieren.

: Bearbeitet durch User
von F. P. (pl504)


Bewertung
0 lesenswert
nicht lesenswert
Jacko schrieb:
> Wonach du nicht gefragt hast, ist der Leckstrom des ADC-Eingangs!
Die Datenblattangabe 100M Eingangswiderstand des ADC fasse ich als 
(ungefähres) Maß für den Eingangs-Leckstrom auf. Dieser wäre dann je 
nach Eingangsspannung im zweistelligen nA-Bereich angesiedelt.

von Soul E. (souleye) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Norbert schrieb:
> F. P. schrieb:
>> Eingang mit einem anständigen C abblocken. Der S&H-Kondensator "klaut"
>> daraus natürlich bei jeder Messung Ladung,
>
> Macht er das wirklich? Wenn die zu messende Spannung bei allen
> Folgemessungen gleich bleibt? Ich bin da nicht sicher. Der
> S&H-Kondensator wird doch benötigt um während der Messung einen stabilen
> Pegel sicher zu stellen. Warum sollte er nach der Messung entladen
> werden?

Üblicherweise wandelt man mehrere ADC-Kanäle in Folge. Mit zu kleinen 
oder zu hochinduktiv angebundenen Abblockkondensatoren hast Du 
Übersprechen, d.h. der Messwert des aktuellen Kanals hängt von dem des 
vorherigen ab.

Faustregel: Für ADC-Fehler <1% muss der Abblockkondensator 100x größer 
sein als der S&H-Kondensator. Im Datenblatt steht entweder dessen wert 
oder eine Empfehlung für die minimale Kapazität am Eingang.

Mit >4,7nF bei <10 mm Leiterbahnlänge bist Du meistens gut dabei


> Und wenn die Messspannung fluktuiert und die Versorgung hochohmig ist,
> wird ein "anständiger" Kondensator Einiges flach bügeln.

Das ist ohnehin notwendig. Google mal nach "Abtasttheorem". Wenn Deine 
SW im 1ms-Raster misst, dürfen am ADC-Eingang keine Frequenzen oberhalb 
500 Hz auftauchen. Entsprechend muss der Filter (Reihenwiderstand und 
Abblockkondensator) dimensioniert werden.

von Arduino Fanboy D. (ufuf)


Bewertung
0 lesenswert
nicht lesenswert
F. P. schrieb:
> Im Datenblatt sind z.B. 100M als Nennwert
> angegeben.

Das ist der Widerstand wenn keine Messungen gemacht werden.
Wird der S&H geladen, sagt das Datenblatt 10K bis 100K

F. P. schrieb:
> Wer sagt denn, daß vor der S&H-Schaltung nicht noch ein Impedanzwandler
> sitzt?
Das Datenblatt!


Das Datenblatt empfiehlt eine Impedanz der Eingangsschaltung von 10k, 
oder kleiner, da sich sonst die S&H Zeit verlängern kann, und sich damit 
die 13,5 ADC Takte für die Wandlung nicht garantieren lassen.

Beispiel: 
http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf

von Norbert (Gast)


Bewertung
0 lesenswert
nicht lesenswert
soul e. schrieb:
> Üblicherweise wandelt man mehrere ADC-Kanäle in Folge. Mit zu kleinen
> oder zu hochinduktiv angebundenen Abblockkondensatoren hast Du
> Übersprechen, d.h. der Messwert des aktuellen Kanals hängt von dem des
> vorherigen ab.

Zuerst waren wir bei Referenzspannungen, dann bei Sample&Hold und jetzt 
hauen wir noch Multiplexer dazu?

> Google mal nach "Abtasttheorem".

Danke, ich arbeite bereits seit sehr als 1½ Jahrzehnten mit µC und AD/DA 
Wandlern. ;-)

von spess53 (Gast)


Angehängte Dateien:

Bewertung
2 lesenswert
nicht lesenswert
Hi

>Das Datenblatt empfiehlt eine Impedanz der Eingangsschaltung von 10k,
>oder kleiner, da sich sonst die S&H Zeit verlängern kann, und sich damit
>die 13,5 ADC Takte für die Wandlung nicht garantieren lassen.

Welche 13,5 Takte?

Der ADC hat eine Sample&Hold Zeit von 1,5 ADC-Takten. Danach ändert sich 
am Wert nichts mehr. Und die 1,5 Takte sind vorgegeben, da verlängert 
sich nichts.

Das Problem ist, das während dieser 1,5 Takte bei zu hohen Impedanzen 
ein Spannungseinbruch stattfindet der zu Fehlmessungen führen kann 
(siehe Anhang).

MfG Spess

von Axel S. (a-za-z0-9)


Bewertung
0 lesenswert
nicht lesenswert
Arduino F. schrieb:
> F. P. schrieb:
>> Im Datenblatt sind z.B. 100M als Nennwert
>> angegeben.
>
> Das ist der Widerstand wenn keine Messungen gemacht werden.
> Wird der S&H geladen, sagt das Datenblatt 10K bis 100K

Nein.

Der ADC-Eingang ist im wesentlichen kapazitiv (C_S/H ~= 14pF). Der 
Widerstand von 1..100K liegt in Reihe zu diesem Kondensator. Er führt 
also nicht zu einer Belastung der Quelle, sondern verzögert "nur" die 
Aufladung des Kondensators.

von Arduino Fanboy D. (ufuf)


Bewertung
0 lesenswert
nicht lesenswert
spess53 schrieb:
> Der ADC hat eine Sample&Hold Zeit von 1,5 ADC-Takten. Danach ändert sich
> am Wert nichts mehr. Und die 1,5 Takte sind vorgegeben, da verlängert
> sich nichts.

Schwachsinn!
Datenblatt nicht gelesen!

Dabei habe ich es doch extra, auch für dich, verlinkt...

Hier ein Auszug (extra für dich):
1
The ADC is optimized for analog signals with an output impedance of approximately 10 k or less. If such a
2
source is used, the sampling time will be negligible. If a source with higher impedance is used, the sampling
3
time will depend on how long time the source needs to charge the S/H capacitor, with can vary widely.

von Arduino Fanboy D. (ufuf)


Bewertung
0 lesenswert
nicht lesenswert
Axel S. schrieb:
> Er führt
> also nicht zu einer Belastung der Quelle,

Natürlich belastet das Laden des S&H Kondensator die Quelle!
Oder möchtest du dem Widersprechen?

von Boris O. (bohnsorg) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Wann immer es geht ersetze ich die interne Referenz gegen eine externe, 
bspw.  LM4040, A-Grade. Andernfalls braucht es immer einen 
Kalibrierungsschritt, am besten regelmäßig, statt nur nach Bestückung. 
Das schließt die Messung der konkreten Schaltung ein, vgl. die bereits 
oben genannte Kalibrierungs-AppNote. Da die interne Referenz deutlich 
stärker von den Störsignalen im µC beeinflusst wird, fällt diese 
Fehlergröße schon einmal weg und den Noise-Reduction-Sleep kann man 
sparen.

Was die Abhängigkeit der internen Referenz von der Betriebsspannung 
anbelangt, bin ich bei Toleranzen von <1% skeptisch. Die dort 
beschriebene Bandgap-Referenz (auch für die Temperaturmessung) liegt 
unkalibriert bei 10%, mit Kalibrierung bis auf ca. 1% (vollständiges 
Handbuch, ATMega328P).

Aber vielleicht machst du es noch etwas genauer, mit deinem Vorhaben und 
berücksichtigst auch evtl. Komponenten vor dem µC. Mit 5% Kohleschicht 
zu 100ppm Temperaturabhängigkeit im Spannungsteiler davor kann man sich 
1%-Referenzen auch sparen. (Wahlweise 70er-Jahre OpAmps ohne jegliche 
Offset-Kompensation oder fein gearbeitete Lecherleitungen als Speisung 
des ADC.)

von Axel S. (a-za-z0-9)


Bewertung
0 lesenswert
nicht lesenswert
Arduino F. schrieb:
> spess53 schrieb:
>> Der ADC hat eine Sample&Hold Zeit von 1,5 ADC-Takten. Danach ändert sich
>> am Wert nichts mehr. Und die 1,5 Takte sind vorgegeben, da verlängert
>> sich nichts.
>
> Schwachsinn!

Form! Immerhin bestätigst du mal wieder, daß schlechte Umgangsformen mit 
Sachverstand meist negativ korrelieren.

> Datenblatt nicht gelesen!

Und du: zwar gelesen, aber nicht verstanden. Die Sample-Zeit bei einer 
normalen [1] AD-Wandlung ist 1.5 Perioden des ADC-Taktes. Das ist auch 
nicht konfigurierbar. Außer über den ADC-Takt natürlich.

> Hier ein Auszug (extra für dich):

(schnipp)

Nur daß hier "sampling time" etwas ganz anderes bedeutet. Es ist nicht 
die Zeit gemeint, für die der ADC-Eingang im sample Zustand verbleibt, 
sondern die Zeit, während der tatsächlich Strom in den S&H Kondensator 
fließt. Diese Zeit muß zwingend kürzer sein also die oben genannten 
1.5 Takte, sonst kommt es zu einem Meßfehler.


[1] die erste Wandlung nach dem Aktivieren des ADC verwendet 13.5 Takte, 
weil da der Analogkram im Signalpfad erst mal warm laufen muß. Atmel 
sagt es zwar nicht, aber ich nehme an, sie müssen da u.a. eine 
Ladungspumpe anwerfen, die die Betriebsspannung für die Analogschalter 
und den Komparator bereitstellt.


Arduino F. schrieb:
> Natürlich belastet das Laden des S&H Kondensator die Quelle!
> Oder möchtest du dem Widersprechen?

Textverständnis ist echt nicht dein Ding. Lies meinen Beitrag einfach 
noch einmal. Oder halt so lange, bis du ihn verstanden hast.

von Arduino Fanboy D. (ufuf)


Bewertung
-1 lesenswert
nicht lesenswert
Axel S. schrieb:
> [1] die erste Wandlung nach dem Aktivieren des ADC verwendet 13.5 Takte,
> weil da der Analogkram im Signalpfad erst mal warm laufen muß. Atmel
> sagt es zwar nicht, aber ich nehme an, sie müssen da u.a. eine
> Ladungspumpe anwerfen, die die Betriebsspannung für die Analogschalter
> und den Komparator bereitstellt.

Auch das stimmt nicht.
Auch Datenblatt nicht gelesen.

Die erste Wandlung nach dem Aktivieren des ADC benötigt 25 ADC Takte, da 
die interne Statemaschine initialisiert wird.
Alle weiteren Wandlungen kommen mit 13,5 aus.
(wenn die restlichen Bedingungen stimmig sind)

Axel S. schrieb:
> Und du: zwar gelesen, aber nicht verstanden. Die Sample-Zeit bei einer
> normalen [1] AD-Wandlung ist 1.5 Perioden des ADC-Taktes.

Ebenso du: zwar gelesen, aber nicht verstanden.

Du solltest nochmal die Atmel Unterlagen genauer studieren.
Eine interner Komparator vergleicht die Spannung des S&H Kondensators 
und des Multiplexer Ausgangs.
Wenn nahezu gleich wird die Wandlung gestartet. Nicht eher.
Die Mindestzeit sind 1,5 ADC Takte.
Schneller gehts nimmer.

Tipp:
Wenn man will, kann man das auch in einer Testschaltung überprüfen.

: Bearbeitet durch User
von spess53 (Gast)


Bewertung
2 lesenswert
nicht lesenswert
HI

>Schwachsinn!
>Datenblatt nicht gelesen!

Deswegen hat der Sample&Hold Kondensator trotzdem keine 13,5 ADC-Takte, 
sondern nur 1,5 Takte(Table 24-1. ADC Conversion Time -> Sample & Hold) 
Zeit zum Umladen. Das ist die Zeit in der der Schalter in Figure 24-8. 
Analog Input Circuitry geschlossen ist. Und wenn das nicht reicht dann 
wird das Ergebnis falsch.

MfG Spess

von Arduino Fanboy D. (ufuf)


Bewertung
-1 lesenswert
nicht lesenswert
spess53 schrieb:
> Das Problem ist, das während dieser 1,5 Takte bei zu hohen Impedanzen
> ein Spannungseinbruch stattfindet der zu Fehlmessungen führen kann
> (siehe Anhang).

Auch das ist nicht (ganz) richtig.

Deine Spannungseinbrüche haben kaum Wirkung.

Tolle Bildchen, sie zeigen Einbrüche, aber diese Einbrüche verlängern 
nur die S&H Ladezeit.

Auch hier kann man das recht einfach testen.

Mal mit, und mal ohne Kerko, am Eingang.
Mehr als ein armseliges Digit, macht das nicht aus.
Auch wenn bei den Einbrüchen eigentlich 20 Digits zu erwarten wären.

von Arduino Fanboy D. (ufuf)


Bewertung
-2 lesenswert
nicht lesenswert
spess53 schrieb:
> Deswegen hat der Sample&Hold Kondensator trotzdem keine 13,5 ADC-Takte,
Wo habe ich das gesagt?


Das habe ich geschrieben:
Arduino F. schrieb:
> Das Datenblatt empfiehlt eine Impedanz der Eingangsschaltung von 10k,
> oder kleiner, da sich sonst die S&H Zeit verlängern kann, und sich damit
> die 13,5 ADC Takte für die Wandlung nicht garantieren lassen.

Noch mal klarer:
13,5 ADC Takte für die Wandlung
Nicht 13,5 für den S&H Vorgang
Sondern gesamt.
Steht doch auch im Datenblatt.

spess53 schrieb:
> Und wenn das nicht reicht dann
> wird das Ergebnis falsch.
Irrtum!
Die S&H Zeit verlängert sich.
Und damit kann man kein Zeitraster einhalten, wenn man das muss.

: Bearbeitet durch User
von Dietrich L. (dietrichl)


Bewertung
2 lesenswert
nicht lesenswert
Arduino F. schrieb:
> Du solltest nochmal die Atmel Unterlagen genauer studieren.
> Eine interner Komparator vergleicht die Spannung des S&H Kondensators
> und des Multiplexer Ausgangs.
> Wenn nahezu gleich wird die Wandlung gestartet. Nicht eher.
> Die Mindestzeit sind 1,5 ADC Takte.

Hast Du auch eine Quelle dafür?

von Axel S. (a-za-z0-9)


Bewertung
1 lesenswert
nicht lesenswert
Arduino F. schrieb:
> Du solltest nochmal die Atmel Unterlagen genauer studieren.
> Eine interner Komparator vergleicht die Spannung des S&H Kondensators
> und des Multiplexer Ausgangs.

Wo willst du dir das ins Datenblatt halluziniert haben?

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Bewertung
0 lesenswert
nicht lesenswert
Boris O. schrieb:
> und
> berücksichtigst auch evtl. Komponenten vor dem µC. Mit 5% Kohleschicht
> zu 100ppm Temperaturabhängigkeit im Spannungsteiler davor kann man sich
> 1%-Referenzen auch sparen.

Also der LM4040 is jetz auch mit 100ppm/K (max) angegeben.
Das auch nur bei den teuren Selektionen, das geht hoch bis 200

von Arduino Fanboy D. (ufuf)


Bewertung
2 lesenswert
nicht lesenswert
So, habe jetzt getestet.

Und möchte mich, in aller mir möglichen Demut, vor euch verbeugen!
Ich bitte reumütig um Verzeihung.

Der Test hat ergeben, dass die Wandlungszeit unabhängig von dem Signal 
ist.
Völlig unabhängig.
Die leichten Schwankungen, welche ich erhalten habe, sind auf meine ISR 
fürs Zeithandling und Debugausgabe zurückzuführen.

Also ganz klar: Ich habe falsch gelegen!

Den S&H Komparator habe ich dann wohl aus einem anderen Datenblatt von 
einem anderen ADC.

Eine Transferfehlleistung bzw. lernen unter Schmerzen.

: Bearbeitet durch User
von F. P. (pl504)


Bewertung
0 lesenswert
nicht lesenswert
Wäre schön, wenn wir uns nun wieder alle vertragen könnten.

Impedanz != Resistanz

ADC-Eingang mit z.B. 100n abgeblockt ergibt auch bei hochohmiger 
Speisung (sagen wir 100k) für den S&H-Kondensator eine sehr niedrige 
Eingangsimpedanz. Dann dürften selbst 100k das Meßergebnis nicht 
wesentlich verfälschen.

Wäre mal interessant, wohin ein geladener Kondensator am ADC-Eingang 
driftet, wenn man ihn von seiner Speisung entfernt und permanent die 
Spannung mißt. Welche Spannung stellt sich ein?

von Dietrich L. (dietrichl)


Bewertung
2 lesenswert
nicht lesenswert
Arduino F. schrieb:
> Also ganz klar: Ich habe falsch gelegen!

Danke und schön, dass Du dazu stehst! Das macht nicht jeder...

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Ich denke, Atmel hat das so gemeint, daß man dem S&H Kondensator ggf. 
mehr Zeit zum Laden geben muss (nicht dass die Zeit automatisch 
verlängert würde).

von Axel S. (a-za-z0-9)


Bewertung
3 lesenswert
nicht lesenswert
F. P. schrieb:
>
> Wäre mal interessant, wohin ein geladener Kondensator am ADC-Eingang
> driftet, wenn man ihn von seiner Speisung entfernt und permanent die
> Spannung mißt. Welche Spannung stellt sich ein?

Das hängt von Details ab, die Atmel nicht nennt. Z.B. ob der S&H 
Kondensator (der in Wirklichkeit eine Menge parallel geschalteter, binär 
abgestufter Kondensatoren im ADC ist) mit dem anderen Ende wirklich an 
Vcc/2 hängt. Ob die Kondensatoren zwischen Messungen entladen werden, 
z.B. um die Offsetspannung des Komparators im ADC zu kompensieren. etc.

Wenn du es genau wissen willst, probiere es aus.

Schon die verwendete ADC-Technik ist durchaus spannend. Eine sehr 
detaillierte Beschreibung findet sich im Reference Manual des 68HC11 
(ja, so alt ist diese Technik schon). Sonst google nach charge 
redistribution ADC

: Bearbeitet durch User
von W.A. (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Dietrich L. schrieb:
> Zusammen damit, dass Atmel für das Analogsignal einen maximalen
> Innenwiderstand von 10kOhm empfiehlt ist in dem Fall die
> Temperaturabhängigkeit des Eingangswiderstand ziemlich sicher
> vernachlässigbar.

Immerhin hängen die Analog-In-Pins bei weitem nicht direkt am ADC. Da 
hängt noch ein bisschen was dazwischen, u.a. ein paar Kapazitäten, die 
irgendwie mal umgeladen werden wollen.

von F. P. (pl504)


Bewertung
0 lesenswert
nicht lesenswert
Habe mal 100n an den ADC7 des ATmega32 drangehängt, der Eingang scheint 
echt verdammt hochohmig zu sein (weit mehr als 100M). Auf 0 gezogen lädt 
sich der C verdammt langsam auf, pro LSB dauert es ca. 5 s 
(Referenzspannung: intern 2,56 V). Das wäre im pA-Bereich, da sind wir 
bei Eingangswiderständen im zweistelligen GOhm-Bereich?! Hätte bei 
solchen Beträgen eher die Umgebung in Verdacht, da wäre mein altes 
Steckbrett - direkt daneben befindet sich ja die Referenzspannung.

von Axel S. (a-za-z0-9)


Bewertung
0 lesenswert
nicht lesenswert
F. P. schrieb:
> Habe mal 100n an den ADC7 des ATmega32 drangehängt, der Eingang scheint
> echt verdammt hochohmig zu sein (weit mehr als 100M). Auf 0 gezogen lädt
> sich der C verdammt langsam auf, pro LSB dauert es ca. 5 s
> (Referenzspannung: intern 2,56 V). Das wäre im pA-Bereich, da sind wir
> bei Eingangswiderständen im zweistelligen GOhm-Bereich?!

Real ist da nirgendwo ein Widerstand. Nur Leckströme. Die können aber 
durchaus positiv oder negativ sein (vulgo: aus dem Pin raus oder in 
ihn rein) und das auch abhängig von der anliegenden Spannung. Außerdem 
sind die Leckströme thermisch verursacht, steigen also mit der 
Temperatur. Und zwar exponentiell, ca. Verdopplung pro 10K. Die +/-1µA 
aus dem Datenblatt gelten über den ganzen Temperaturbereich und 
enthalten sicher extra noch ganz viel Sicherheitszuschlag.

Für die eigentliche Fragestellung ist dein Meßaufbau nicht gut. Statt 
100nF solltest du eher 100pF hinhängen. Den lädst du dann einmalig auf 
(vom Vref-Anschluß) und dann machst du ein paar (Tausend) Messungen und 
schaust wie sich der Meßwert ändert. Dann das gleiche Spiel mit 
anfänglich entladenem Kondensator. Und gerne noch für weitere 
Startwerte. Ich würde da auch Vref=Vcc setzen und den Fall 
U_anfang=Vcc/2 extra anschauen.

von F. P. (pl504)


Bewertung
0 lesenswert
nicht lesenswert
Kann morgen gerne mal den Eingang an der Keithley 2450 durchmessen, wenn 
ich Zeit habe. Ich bin hier zu Hause momentan nur mit den nötigsten 
Dingen ausgestattet (100p = Fehlanzeige) und nach Feierabend will man 
doch irgendwann nach Hause.

von Jacko (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Toll! Nach ca. 20 Postings ist langsam durchgesickert, was ich
schrieb - und es wurden noch keine allzu groben Beleidigungen
ausgetauscht.

Daraus lässt sich etwas Optimismus für das Niveau des Forums
schöpfen...

Bin schon gespannt, was der "Keithley 2450" am ADC-Eingang
neues entdecken kann.

- Ist der in der Lage, den C_Sample, der sich mal kurz für
  1,5 ADC-Takte zeigt, zu messen?
  Wozu? Laut Datenblatt/App-Note irgendwas von 10..40 pF.

- Den Leckstrom UNTER DEN GERADE VORLIEGENDEN BEDINGUNGEN / BEI
  GENAU DIESEM µC-EXEMPLAR könnte man vielleicht erfassen.
  Sagt aber nix über ALLE EXEMPLARE bei T = min bis max...

Wer eine funktionierende Schaltung aufbauen will, muss sie so
konstruieren, dass sie mit den worst-case-Werten im Datenblatt
noch zuverlässige Werte (im geforderten Toleranzbereich) liefert.
- ALLES ANDERE KANN ZU MURKS FÜHREN!

von F. P. (pl504)


Bewertung
0 lesenswert
nicht lesenswert
Die SMU ist nicht für dynamische Sachen geeignet, mißt dafür aber 
geringste Leckströme im pA-Bereich, sofern denn das Setup auch paßt. So 
habe ich beispielsweise low-leakage Chips ausgemessen, das kann man ohne 
Triaxial-Meßleitungen knicken. Anhand der sich ergebenden 
Sperrkennlinien mit ihren Krümmungen lassen sich dann Rückschlüsse auf 
die Technologie ziehen (z.B. wieviele und was für Dioden und welche wie 
im Substrat liegen). Im oberen nA-Bereich wird's für die Chipentwickler 
schon wieder uninteressant.

Mit einem Oszi sollte man die Störungen beim Sampeln aber sehen können. 
Mit einem 10:1-Tastkopf hat man um die 10p || 10M, dazu ggf. noch ein 
10M zum Vorspannen auf Vref...

Übrigens habe ich jetzt doch mal den Lötkolben angeschmissen und einen 
22p aus der Schrottkiste geerntet. Damit stellt sich ein Gleichgewicht 
ein, der ADC gibt um die 400 raus (ergibt ziemlich genau 1 V). Egal, ob 
der C nach Masse oder nach Ref kurzgeschlossen wurde. Das Ergebnis 
zappelt natürlich um einige Bits rum, es hängt ja nur der 22p am 
Eingang.

von Soul E. (souleye) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
F. P. schrieb:

> Mit einem Oszi sollte man die Störungen beim Sampeln aber sehen können.

Sieht man.

Wir hatten mal in einem Projekt einen Pin mit potentieller ADC-Funktion 
als GPIO-Input genutzt. Schalter nach Masse und Pullup (10k?) nach VDD. 
Weil's bequemer war hatten die Kollegen vom MCU-HAL den Kanal aber 
trotzdem A/D-gewandelt. Das Ergebnis stand mit im Array und wurde halt 
ignoriert.

Irgendwann fiel auf, dass der Portpin immer wieder mal sporadisch als 
low eingelesen wurde, obwohl er eigentlich high sein sollte. In der 
Praxis kein Problem, da es durch die Entprellung unterdrückt wurde, aber 
trotzdem unerwünscht. Bei der Fehlersuche stellte sich dann heraus, dass 
der Effekt verschwindet wenn man den AD-Kanal aus dem Scheduling 
rausnimmt. Es war also tatsächlich der Dip beim samplen, der hier den 
falschen Pegel verursacht hat.

Mit dem Oszi (Keysight 500 MHz 1:10 Tastkopf mit vielleicht 10pF) hat 
man den Dip gesehen, er ging aber nur bis ca 4 V herunter. Um die 
FET-Probe zu holen war ich zu faul, damit hätte man es noch besser 
gesehen. Der Controller sitzt natürlich etwas näher an seinem Pin, so 
dass es da für ein low gereicht hat.

Mit 47pF am Pin war der Spuk auch weg.

von Michael B. (laberkopp)


Bewertung
0 lesenswert
nicht lesenswert
F. P. schrieb:
> Habe mal 100n an den ADC7 des ATmega32 drangehängt, der Eingang scheint
> echt verdammt hochohmig zu sein (weit mehr als 100M). Auf 0 gezogen lädt
> sich der C verdammt langsam auf, pro LSB dauert es ca. 5 s
> (Referenzspannung: intern 2,56 V). Das wäre im pA-Bereich, da sind wir
> bei Eingangswiderständen im zweistelligen GOhm-Bereich?!

Na ja, das Datenblatt erlaubt als input leakage current I/OP pin 1uA, 
und das wären bei 2.56V Referenzspannung und 1024 A/D-Auflösung, also 
2.5mV Auflösung, 2500 Ohm maximale Eingangsimpedanz bis ein bitfehler 
auftritt. Die laut Datenblatt maximle Eingangsimpedanz von 10k führt 
dann schon zu 4 LSB Fehler.

Glücklicherweise ist der Leckstrom real nicht so hoch, der 
Datenblattgrenzwert gilt ja vor allem auch bei hoher Chiptemperatur, 
aber wenn 1uA bei 85 GradC erlaubt sind und 3uA bei 105 GradC, dann 
gelten bei 25 GradC noch 0.035uA, was an 75k Eingangsimpedanz den 1 LSB 
Fehler ergibt. 100k Quellimpedanz sind also (es sei denn man will falsch 
messen) nicht möglich. Wer hochohmiger baut und mit 10nF Kondensator das 
sampling des Eingangskondensators abstützt fährt nach dem Prinzip der 
Hoffnung daß der Chip wesentlich besser ist als das Datenblatt zugesteht 
- dann kann er den Kondensator auch gleich weglassen.

Wesentlich besser wird der Analog Comparator Eingang laut ATmega8 
Datenblatt bewertet, mit nur +/-50nA. Leider hängt der an PortD und 
nicht einem A/D-Eingang.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.