Forum: Mikrocontroller und Digitale Elektronik Externer AD-Wandler AD7170


von Markus W. (kornbanane)


Angehängte Dateien:

Lesenswert?

Hallo,

hab mal wieder mit meinen externen ADC zu kämpfen... es handelt sich um 
ein AD7170. Diesen lese ich über die SPI Schnittstelle mit einem µC aus.
Hab oben mal meine Schaltung und das Datenblatt angehängt.

Das Problem ist, das ich schwachsinnege Werte bei der AD-Wandlung 
herausbekomme. Zum besseren Verständniss habe ich mal eine Art 
Messtabelle aufgestellt (siehe Anhang).

Wie man dort sieht habe ich auch einmal versucht die Sache 
Softwareseitig anzupassen, indem ich einfach den Offset zwischen 
Wandelergebniss und echter Spannung abgezogen habe. Das hat jedoch auch 
nichts genützt. Daran sieht man aber das der Wandelfehler nicht linear 
ist.

Wie auch immer... die Referenzspannung ist konstant 5V, der ADC wird 
auch mit der Referenzspannungsquelle versorgt also ist die 
Versorgungsspannung auch konstant 5V.

Die Spannungen die an den differentiellen Eingängen des ADC's anliegen 
habe ich auch direkt am Pin nachgemessen. Alles ist in Ordnung. Ich habe 
soga die Übertragung der Bits am Oszi angeschaut um zu sehen, ob nicht 
meine SPI Routine mist einließt, aber nein auch das ist in Ordnung.

Die Datenübertragung läuft über 24 Bit. Dabei sind die Bits 1-8 eine Art 
Statustelegramm (es zeigt keinen Fehler an bei mir). Die Bits 9-12 sind 
0
und die Bits 13-24 enthalten das 12 Bit Wandelergebniss.

Also zusammenfassend: Die Referenzspannung des ADC's ist ok; alle Massen 
sind verbunden; Masse ist auch ok (keine Offsetspannung drauf); 
Spannungsversorgung ist ok; SPI Routine ließt auch das ein was auf dem 
Bus liegt; der ADC gibt keinen Fehler beim Statustelegramm aus; Die 
Eingangsspannungen am ADC sind richtig. Trotzdem kommen diese 
schwachsinnigen Werte raus. Ach ja - die Werte sind auch konstant, also 
bei jedem Auslesen kommt das selbe raus (bei gleicher Eingangsspannung). 
Dort "schwinkt" also nichts.

Weiß echt nicht mehr weiter :(

Danke fürs lesen

von Rainer U. (r-u)


Lesenswert?

leg doch mal AIN+ auf 5V und AIN- auf GND - was misst er da?
dann einmal andersrum: AIN- auf 5V und AIN+ auf GND - was misst er da?

(also vorausgesetzt diese Eingangsspannungen sind zulässig) - Er müsste 
die Differenz aus Deinen 2 Spannungen messen.. in einem Fall alle Bits 
0, im zweiten alle bites 1..)

Kannst ja vorsichtshalber vor den Reihenwiderständen (in der Mitte 
Deiner Spannungsteiler) so anschließen..

von Markus W. (kornbanane)


Lesenswert?

Danke für deine Hilfe.

Lol, für alle die es interessiert, habe den Fehler gefunden ...

Der Wandler wandelt sowol positive Spannungen als auch negative 
Spannungen !

Soll heißen das 12 Bit Wandelergebniss ist so aufgebaut:

Bit 12 gibt an,  ob es sich um eine positive oder negative Spannung 
handelt. Dabei gilt:
1: positive Spannung
0: negative Spannung

Die Restlichen Bits stellen dann ein 11 Bit Wandelergebniss da.

Kein Wunder das ich nur schrott gemessen habe :D

von Rainer U. (r-u)


Lesenswert?

kaum macht man alles richtig, schon funktioniert's .. :-) Ob Du das 
höchste Bit nun als Vorzeichen oder als 12. Bit interpretierst, ist ja 
ganz Deine Sache.

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
Noch kein Account? Hier anmelden.