Problem mit AVR-AD-Wandler

OP #2424046
Lesenswert?

Hi Leute,

ich habe in einer Schaltung ein Problem mit dem AVR-AD-Wandler 
(ATmega32) und hoffe auf eure Anregungen.
Ich habe an PA0 bis PA5 Potis als Spannungsteiler angeschlossen, um die 
Stellungen der Potis abzufragen. In einem Testprogramm hat das alles 
auch super geklappt: Der AVR hat den vollen Wertebereich des Wandlers 
ausgegeben.
In der Debug-Phase meiner finalen Firmware bin ich jetzt auf ein 
seltsames Phänomen gestoßen: Wenn das Poti an PA1 heruntergedreht ist, 
dann bekomme ich an PA0 nur einen Teil des Wertebereichs, ca. 2/3. Wenn 
ich nun das Poti an PA1 'raufdrehe, dann steigt die Spannung an PA0 mit 
an, bis sie irgendwann auf den vollen Wert angestiegen ist. Gleiches 
Problem mit den folgenden Potis.

Mein erster Gedanke dazu war, dass zwischen dem Umschalten des 
Eingangspins für den AD-Wandler und dem Starten der Konvertierung zu 
wenig Zeit liegt. Nach dem Studium der entsprechenden Stellen im 
Datasheet bin ich aber der Meinung, dass das keinen Einfluss haben 
sollte. Auch auf Reste in den Registern habe ich meinen Code 
kontrolliert, das sollte es auch nicht sein.
Ich würde mich freuen, wenn jemand von euch einen Tipp hätte, was ich 
noch falsch gemacht haben könnte.

Vielen Dank im Voraus,
Paul
#2424080
Lesenswert?

> dass zwischen dem Umschalten des
> Eingangspins für den AD-Wandler und dem Starten der Konvertierung zu
> wenig Zeit liegt. Nach dem Studium der entsprechenden Stellen im
> Datasheet bin ich aber der Meinung, dass das keinen Einfluss haben
> sollte.

Wie gross sind die Potis?

Bedenke: Wenn du den Multiplexer umprogrammierst, muss sich die interne 
Sampe&Hold Stufe erst mal auf die neue Spannung einstellen. Das dauert 
aber seine Zeit und hängt auch davon ab, wieviel Strom deine 
Eingangsschaltung an die Sample&Hold Stufe liefern kann.
OP #2424168
Lesenswert?

Karl Heinz Buchegger schrieb:
>> dass zwischen dem Umschalten des
>> Eingangspins für den AD-Wandler und dem Starten der Konvertierung zu
>> wenig Zeit liegt. Nach dem Studium der entsprechenden Stellen im
>> Datasheet bin ich aber der Meinung, dass das keinen Einfluss haben
>> sollte.
>
> Wie gross sind die Potis?
Die Potis haben, wenn ich mich nicht irre, 10k (lin).

> Bedenke: Wenn du den Multiplexer umprogrammierst, muss sich die interne
> Sampe&Hold Stufe erst mal auf die neue Spannung einstellen. Das dauert
> aber seine Zeit und hängt auch davon ab, wieviel Strom deine
> Eingangsschaltung an die Sample&Hold Stufe liefern kann.
Okay, das würde ungefähr in die Richtung meines ersten Gedankens gehen. 
Würde es denn dann etwas bringen, wenn ich ad-wandler quasi direkt nach 
dem lesen auf den neuen Pin einstellen würde? Durch die Befehle, die 
danach ausgeführt werden, würde der Multiplexer dann ja seine 
wohlverdiente "Pause" bekommen (es sind ein paar zehn Befehle bei 8 MHz 
- reicht das aus?).

Vielen Dank für die Anregung, das werde ich gleich mal ausprobieren :)

Beste Grüße,
Paul

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren