XMEGA ADC Offset Calibration

Gast #3397788
Lesenswert?
• ▲
▼
Hallo Gemeinde,

ich betreibe meinen ADC eines XMEGA wie folgt:
* Single Ended
* Unsigned
* Ext. Referenz

Mit den Messwerten bin ich zufrieden. Ich könnte diese noch verbessern, 
wenn ich den tatsächlichen Offset (tpy. laut Datenblatt 190 LSB) noch 
vermesse und dann von meinem Messwert abziehe. Aktuell subtrahiere ich 
bei jeder Messung 190 LSB.

So jetzt die spannende Frage, wie messe ich den Offset? Aktuell habe ich 
nur die Idee einen ADC-Eingang auf Masse anzuschließen und den Offset 
zu messen und anschließend immer von den eigentlichen Messungen 
abziehen.

Einzig was mir an der obigen Lösung nicht gefällt, ich "verschwende" 
somit einen wertvollen Eingang.

Kennt jemand einen bessern Weg?

VG,
Michael
#3397796
Lesenswert?
• ▲
▼
Ich hab so eine "Selbstkalibration" für einen Strom-Messwert mal 
realisiert, indem ich diesen bei deaktvierter Leistungsstufe gemessen 
habe (Strom bekannt und sicher Null). Diesen Wert nimmt das Programm 
dann als Null.

Vielleicht hast Du ja eine ähnliche Möglichkeit, wenn der Controller die 
Nullstellung sicher selbst anfahren kann (z.B. Leistungsstufe 
deaktivieren).
(Firma: TravelRec.) Persönliche Seite #3397809
Lesenswert?
• ▲
▼
Michael schrieb:
> So jetzt die spannende Frage, wie messe ich den Offset? Aktuell habe ich
> nur die Idee einen ADC-Eingang auf Masse anzuschließen und den Offset
> zu messen und anschließend immer von den eigentlichen Messungen
> abziehen.
>
> Einzig was mir an der obigen Lösung nicht gefällt, ich "verschwende"
> somit einen wertvollen Eingang.

Du kannst den Multiplexer so schalten, dass Du den jeweiligen 
Mess-Eingang intern auf GND oder PAD_GND schaltest. Was Du dann über 
diesen Eingang misst, ist der Offset. Wenn Du mehrere Eingänge 
verwendest, solltest Du jeden einzeln messen, da sich der Offset 
verschiedener Eingänge etwas unterscheiden kann. Es ist durchaus 
sinnvoll, pro Eingang mehrere Messungen zu machen (32 oder 64) und den 
Mittelwert zu nehmen, da der XMEGA-ADC gern einmal rauscht.
Gast #3397826
Lesenswert?
• ▲
▼
Leider habe ich nicht die Möglichkeit einen definierten Nullpunkt 
anzufahren. Somit scheidet diese Möglichkeit leider aus.

Den internen Multiplexer bzgl. dem ADC kenne ich nur von der 
AT32UC-Serie, dort gehe ich wie von Knut beschrieben vor. Bei den XMEGA 
habe ich diese Möglichkeit (noch) nicht gefunden. Evtl. kann mir ja hier 
jemand diesbezüglich die Augen öffnen.

VG,
Michael

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.