mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR: Differenzielle Messung mit ADC; AREF-Frage


Autor: Stefan Huebner (shaun)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo z'samme,

mein ATmega ärgert mich gerade. Ich habe hier eine Ladeschaltung für 
NiMH-Akkus (sehr lose an die AVR-Appnote angelehnt - hat jetzt einen 
"richtigen" Regler) von einem ATtiny auf den ATmega übernommen.
Der erste Stolperstein in Form des echt differenziellen ADCs - negative 
Differenzen werden als Zweierkomplement ausgegeben - ist umgangen, ein 
Workaround in der ADC-Routine macht aus den Werten der Differenzeingänge 
bei >0x1FF eine Null und verdoppelt ansonsten den Messwert, um das 
Programm vom Tiny erstmal weiter verwenden zu können.

So weit so gut, die Spannungsmessungen mittels der Single-Ended-Eingänge 
0 und 2 funktioniert auch, aber wenn ich den Strom über MUX=9, d.h. 
(ADC1-ADC0)x10 messe, bekomme ich ca. 30% zu niedrige Werte, und das 
anscheinend auch nicht mal linear.

Nun ist mir aufgefallen, dass im DB steht, bei differenziellen Messungen 
dürfe die AREF max. AVCC-0,2V sein. Weiss jemand, ob das mit internen 
Schaltungen des ATmega zu tun hat, oder soll das lediglich bedeuten, 
dass der Differenzverstärker nur bis 0,2V an die AVCC herankommt und die 
AREF deshalb diesen Wert nicht überschreiten darf, wenn der volle 
Wertebereich bis 0x1FF ausgeschöpft werden soll?

Wenn jemand hier Erfahrungen hat und mir bestätigen kann, dass eine AREF 
gleich AVCC bei differenzieller Messung grundsätzlich zu Fehlern im 
gesamtem Messbereich führen kann, fädel' ich morgen ein Referenz-IC auf 
die Platine ;)

Autor: Stefan Huebner (shaun)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie immer muss man ein Problem erstmal beschreiben, um es zu erkennen.
Die Uhrzeit fordert ihren Tribut - durch das blinde Übernehmen des Codes 
vom mit internem RC-Takt laufenden Tiny auf den mit 16MHz Quarz 
betriebenen ATmega wurde der ADC mit 8MHz gefüttert - fand er nicht so 
toll. Er liegt immer noch 4% über dem Soll, aber da sehe ich mal 
großzügig drüber hinweg - immerhin sind 4 SMD-Widerstände (1%) und ein 
1W-Metallfilmwiderstand (auch 1%) "im Weg".

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]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [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.