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.
http://blog.frankvh.com/2010/01/03/atmel-xmega-adc-problems-solutions/ Google hilft mal wieder... auch fuer solche, die zu faul sind.
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?
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.
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.
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!
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.