www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ADC Spannungsdrift bei Xmega


Autor: Fabian Triebsch (fabtrie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich benutze eine Atxmega128A3 und möchte den ADC verwenden.

Leider bekomme ich einfach nicht den richtigen Wert. Ich habe immer 
einen Spannungsdrift. Ich habe alle Modi durchprobiert und auch alle 
Referenzen probiert. Bei 0 V stimmt es noch. Wenn ich aber 1.6 V bei 
einer Referenz von 3.3 V messe, dann erhalte ich 1.9 Volt. Ich habe es 
auch mit einer Referenz von 1.8 V probiert und den "scaled vcc" gemessen 
und erhalte 0.387 V bei 3.3 V VCC. Egal was ich probiere, ich habe immer 
einen Drift von 10-20%.

Es scheint allerdings mit der internen 1 V Referenz zu funktionieren.

leider habe ich auch nicht in den errata oder im Handbuch gefunden.

ich hoffe ihr könnt mir helfen.

Autor: Michael G. (linuxgeek) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
http://blog.frankvh.com/2010/01/03/atmel-xmega-adc...

Google hilft mal wieder... auch fuer solche, die zu faul sind.

Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
3.3V als Referenz sind schonmal zu viel, lt. Datenblatt darf die 
Referenzspannung maximal Vcc-0.6V betragen. Ausserdem hast Du im 
unsigned mode generell nochmal ein Spannungsoffset in deinem Ergebnis.

Von daher würde ich zum testen erstmal die Referenzspannung auf unter 
2.7V schrauben, die Samplerate bewusst niedrig wählen (siehe Errata) und 
im signed mode messen.

Und noch eins: Kalibrierung mit den Werten aus der Production Signature 
Row hast Du gemacht?

Autor: Fabian Triebsch (fabtrie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich habe die Kalibrierung gemacht, aber bringt eh nix bei so einer 
enormen Abweichung. das Problem besteht ja nicht nur bei 3.3 V sondern 
aich wenn ich VCC/1.6 benutze (ich habe auch extern mal 1.8 V angelegt). 
Außerdem habe ich signed und unsigned mode probiert und das hilft alles 
nicht. Es handelt sich zudem nicht um einen Offset, sondern um einen 
linear ansteigenden Fehler. Bei 0 V ist ja alles richtig und wird immer 
schlimmer wenn die Spannung steigt.

Autor: Michael G. (linuxgeek) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast den Artikel gelesen?

    * Use Differential mode / differential inputs. Tie an external ADC 
pin to GND if necessary.
    * Use either VCC/1.6, or an external reference voltage, for the ADC 
reference. Not the internal 1.00V. Use the ADC to measure the bandgap if 
that helps.
    * Use signed mode.
    * Consider using a 62 kHz ADC sampling rate.
    * Consider assuming the ADC offset is zero.
    * Average multiple ADC measurements (and clip if it makes sense in 
your application)


Wenn Du das alles (richtig) machst solltest nen brauchbares Ergebnis 
erhalten.

Autor: Fabian Triebsch (fabtrie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich weiß nicht was ich geändert habe, aber anscheinend funktioniert es 
jetzt. Problem ist, das ich keine vernünftige externe Referenz habe.

Dennoch danke für eure super Hilfe. Ist ein klasse Forum!

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.