Forum: Mikrocontroller und Digitale Elektronik plötzliche abweichung bei interner aref, warum?


von Jan (Gast)


Lesenswert?

Hi.

ich betreibe den Atmega8 mit interner 2,56 AREF am ADC, dazu noch ein
10nF folie gegen gnd.

das ging auch bisher, aber plötzlich liegen an AREF nicht mehr 2,56 v
sondern 2,60-2,64 v an. dadurch wird natürlich das meßergebnis
entsprechend verändert.

kann mir einer sagen warum das so ist und was man dagegen tun kann?

vcc ist zwischen 4,95 und 5,15, und hat anscheinend keinen einfluß auf
aref.

gruß, jan

von Michael (Gast)


Lesenswert?

Sieh ins Datenblatt: Vref 2,3 -> 2,7 Volt. Die 2,56 V sind ein 'frommer
Wunsch'.

von Jan (Gast)


Lesenswert?

blöd... :)

muss ich halt die 2,56 V vom max6610 nehmen, die wirken recht
konstant.

gibts überhaupt konstantspannungsquellen mit dieser genauigkeit?

muss ja eigenltich, was soll mir sonst eine auflösung von 10bit
bringen...

gruß, jan

von Winfried (Gast)


Lesenswert?

Man muss unterscheiden: Die Spannung wird von AVR zu AVR streuen. Das
ist die eine Sache. Wie stabil die dann beim Einzelnen AVR bleibt, in
Bezug auf Temperatur und Langzeit, ist eine andere Sache. Ich vermute,
dass letzteres so sein wird, dass auch die 10 Bit Auflösung Sinn
machen, also Abweichung nur wenige mV. Vielleicht steht dazu ja was im
Datenblatt.

Dein obig angegebener Wert erscheint mir zu hoch. Vielleicht hast du ja
ein anderes Exemplar von AVR benutzt. Du musst im Grunde jeden Prozessor
kalibrieren.

Winfried

von Hele (Gast)


Lesenswert?

wie können denn konstante und fehlerfreie 5,0V bzw 2,56V für Aref
erzeugt werden?

oder reicht es, wenn ich aref=vcc setze? da ja die 5V da konstant sein
müssten.

von Ratber (Gast)


Lesenswert?

Für ne Konstante Referenz gibt es einige Möglichkeiten.


-Eine Z-Diode

Billigste Methode mit mäßiger Stabilität in bezug auf Temperatur- und
Belastungsdrift

-Einen Spannungsregler

Schon besser


-Eine Präzisionsspannungsquelle wie zb. LM336 (5V 1%) oder LT1021DCN
(5V 0.05%) oder....etc.

Die beste Möglichkeit aber dann auch etwas Teurer je nach Ansprüche an
Konstanz der Ausgangsspannung.




Ich greife zur letzteren Möglichkeit wenn die Messergebnisse im
vordergrund stehen denn wer mit Mist mißt mißt Mist ;-)

von crazy horse (Gast)


Lesenswert?

irgendwo hab ichs schon mal hier geschrieben, ziemlich gute Ergebnisse
habe ich mit ICL8069 + LM358 erzielt. Der ICL als Referenzquelle über
6k8 an +5V (bringt ca. 1,25V, Bandgap), dann verstärken mit dem LM358.
Damit kann man gut Referenzspannungen zwischen 1,25 und 4,096V
erzeugen.  Temperaturabhängigkeit beider Bauteile ist gegenläufig,
gleicht sich zumindest teilweise aus. Ist immer noch ne Billiglösung.
Klar, geht noch besser, aber dann wird die Referenz schnell teurer als
der MC.
Vcc als Referenz ist nicht so geeignet, erstmal sind die üblichen
5V-Regler auch nicht gerade Präzisionsteile, ausserdem sind Störungen
drauf, kriegt man zwar ziemlich ausgebügelt, aber ums ausmessen der
Regler kommt man nicht drumherum, Temperaturabhängigkeit ziemlich
hoch.
Mit LM317L habs ichs auch schon mal gemacht, Temperaturdrift wie bei
78L05.

von Ratber (Gast)


Lesenswert?

@Crazy Horse

>Ist immer noch ne Billiglösung.
>Klar, geht noch besser, aber dann wird die Referenz schnell teurer
als
>der MC.


Also Teuer muß ne Refffferenz nicht unbedingt sein.

Den LM336 (5V 1%) gibt es selbst beim großen "C" schon für 1.7
Euronen zu erstehen.

von crazy horse (Gast)


Lesenswert?

Viele Wege führen nach Rom...
Für die Praxis ausreichend behandelt ist das Thema hier:
http://www.sprut.de/electronic/referenz/

von Ratber (Gast)


Lesenswert?

Ja ,genau,da ist es schön erklärt.

Den Link halte ich mal fest für den Fall wenn wieder einer fragt.

THX

von AxelR. (Gast)


Lesenswert?

Nabend
hatte ich auch schonmal erklärt?
meine Atmels driften von Typ zu Typ.
2.6xV sind durchaus die Regel in der letzten Charge.
Ich habe die Referenzspannung als Konstante im EEPROM.
Dann nehm ich mein Zeuchs in Betrieb, messe die Referenzspannung und
trage den abgelesenen Wert im EEPROM ein.
Ich benutze den AVR, um u.A. Batteriespannungen zu messen. Sollte schon
einigermaßen genau sein, weil ich 1zu16 runterteilen muss.

Weil wir gerade dabei sind: Wenn ich von aussen eine genaue Spannung
anlege, müsste ich doch "rückwärts intern" auf meine Referenzspannung
schliessen können?
Ich habe nämlich eigentlich garkeine Zeit, jedes Gerät in die Finger zu
nehmen, um die Referenz zu messen und das im EEPROM abzulegen. (man
kommt auch blöd ran). Ich und Mathe, wisst Ihr ja.
Im moment rechne ich u= (u_ref/1024)*ADC(kanal0)*16.
das funktioniert super.
nach u_ref umstellen kann ja so schwer nicht sein, oder?

u_ref=(u/1024)*ADC(kanal0)*16 ? (nicht schlagen)

Gruß und danke

AxelR.

Das sind so die Momente, wo ich froh bin, das es hier auch "schlaue
Kinder" gibt ;-))

von Ratber (Gast)


Lesenswert?

Ja,mein Sohn gg

von Läubi (Gast)


Lesenswert?

Ich hab da:

uref = ( u * 64 ) * ADC(Kanal0)

raus...


Und die rste Gleichung läßt sich auf:

u= ( u_ref * ADC(kanal0) ) / 64
vereinfachen oder?

von Läubi (Gast)


Lesenswert?

uref = ( u * 64 ) / ADC(Kanal0)

natürlich... sorry :P

von AxelR. (Gast)


Lesenswert?

Danke, Jungs!

von Sven (Gast)


Lesenswert?

@AxelR

>>Im moment rechne ich u= (u_ref/1024)*ADC(kanal0)*16.
das funktioniert super.

Nur um die Verwirrung zu vergrößern: Muss das nicht durch 1023 sein,
weil doch der größte Wert (zum Beispiel 5V) nur 1023 liefert? Mit 1024
verrechnet würde nur 4.995 rauskommen.

Sven

von Ratber (Gast)


Lesenswert?

Yep 1023 ist richtig denn der Wert 0 ist ja auch noch da also .....


Uref/2^n-1  für die Teilung.


Wers nicht gleich versteht der kann auch mal einen 2 oder 3 Bit ADC
annehmen um eine bessere Übersicht zu bekommen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.