Hallo Zussammen!
Ich habe ein größeres Problem mit meinem ADC12 in meinem MSP430.
Bei der AD Wandlung bekomme ich bei konstanter Eingangsspannung immer
andere Messwerte. Und diese unterscheiden sich gleich um Längen. 30-50
Werte.
Habe jetzt schon viel im Forum gesucht und weiß auch, dass das Thema
schon des öfteren behandelt wurde, aber fündig geworden bin ich noch
nicht.
Mein Code sieht wie folgt aus:
1
ADC12CTL0=ADC12ON+SHT0_1+REFON+REF2_5V;
2
ADC12CTL1=SHP;
3
ADC12MCTL0=SREF_1+INCH_3;
4
ADC12CTL0|=ENC;
5
6
ADC12CTL0|=ADC12SC;
7
while((ADC12CTL1&ADC12BUSY)==1);
Habe mich schon viel mit den Registern beschäftigt und auch schon viel
herumprobiert. Aber immer das selbe!
Wäre sehr sehr dankbar, wenn mir dafür jemand nen guten Tipp geben
könnte...
Viele Grüße, Guenter
Guenter schrieb:> Wäre sehr sehr dankbar, wenn mir dafür jemand nen guten Tipp geben> könnte...
Hast du schon mal an der Sample&Hold Zeit herumgespielt?
Dennis schrieb:> Hast du schon mal an der Sample&Hold Zeit herumgespielt?
Ja, hab ich. Also mit SHT0_0 bis SHT0_15.
Leider immer das selbe schlechte Ergebnis...
Rufus Τ. Firefly schrieb:> nd wie sieht das Schaltungsdesign aus? Wie sind die verschiedenen> Abblockkondensatoren verschaltet, wie sieht das Layout aus?
Ich verwende ein EVAL Board von TI (MSP-TS430PM64), soweit ich das sehe
sind da welche drauf. Die Spannung kommt aus einem einfachen
Spannungsteiler mit Poti.
Ist es vielleicht "normal" dass es schwankt?
Bis zu welchem Grad wäre es denn akzeptabel? Immerhin sind ja 4096
Zwischenwerte von 2,5V eh nicht viel...
Guenter schrieb:> Ist es vielleicht "normal" dass es schwankt?
Also bei einem Poti kann es schon sein, ja. Je nachdem, wie hochohmig
der ist - bei hochohmigen Quellen sollte ein Impedanzewandler dahinter.
Aber generell geht es schon - dafür ist halt auch die besagte S&H-Zeit
wichtig. Aber wenn du sagst, dass du schon alles ausprobiert hast.
Trotzdem - ein Poti ist immer ganz schlecht an einem ADC...
2,5V / 4096 = 600uV
Wenn du sagst, du hast Schwankungen von 50, dann bedeutet das in
Spannung:
600uV * 50 = 30mV
Das ist schon sehr viel, auch für ein POTI.
Stimmt dein ausgelesener Wert denn in etwa? Oder misst du vielleicht
ganz was anderes (anderer Kanal oder so, welcher floatet)?
LuXXuS 909 schrieb:> Stimmt dein ausgelesener Wert denn in etwa? Oder misst du vielleicht> ganz was anderes (anderer Kanal oder so, welcher floatet)?
Ansich kommt das schon hin. Ich hab so im Mittel 1630.
Das entspricht 0,995 V und ich habe genau 1V anliegen.
Guenter schrieb:> Ansich kommt das schon hin. Ich hab so im Mittel 1630.> Das entspricht 0,995 V und ich habe genau 1V anliegen.
Na das ist doch schonmal was. Wo ist denn dein Poti? Langes Kabel zum
Board vielleicht?
LuXXuS 909 schrieb:> Wo ist denn dein Poti? Langes Kabel zum> Board vielleicht?
Also da wir uns mit ein paar mV rumärgern, ist das Kabel schon etwas
lang.
Vielleicht 30-40 cm.
Guenter schrieb:> Also da wir uns mit ein paar mV rumärgern, ist das Kabel schon etwas> lang.> Vielleicht 30-40 cm.
Also ich hab mir grad mal das EVAL-Board angeguckt - da ist ja
eigentlich nichts drauf...ist dein Poti direkt an dem Pin? Ohne
Kondensator?
Falls ja, dann spendier dem Ding mal nen Kondensator am ADC-Pin.
Irgendwas... 1u, was gerade da ist.
Das könnte schon helfen.
LuXXuS 909 schrieb:> Falls ja, dann spendier dem Ding mal nen Kondensator am ADC-Pin.> Irgendwas... 1u, was gerade da ist.
Dann werd ich das mal probieren. Vielen Dank schon mal.
Ich melde mich auf jeden Fall nochmal ob es geklappt hat!
LuXXuS 909 schrieb:> Falls ja, dann spendier dem Ding mal nen Kondensator am ADC-Pin.> Irgendwas... 1u, was gerade da ist.
Also gerade griffbereit hatte ich einen 0.47 uF Elko.
Der macht leider überhaupt nichts besser.
Eher schlimmer...
Hallo Guenter,
30-40cm sind Antennentechnik.
Nehme doch einfach einmal einen simplen Spannungsteiler
direkt an die Pins angelötet.
TI hat auch extra Appn. für die Kondensatorbeschaltung
fast in jeder µC-Typbeschreibung (100nF + XµF parallel).
Viel Glück!
Dietmar
Guenter schrieb:> Also gerade griffbereit hatte ich einen 0.47 uF Elko.
Ach nochwas...die Referenz solltest du auch puffern. Der MSP wird einen
Vref+ Pin haben - hier solltest du auch einen Kondensator anschließen -
ich denke der fehlt ebenfalls.
Generell sagt TI: 10u + 100n
Guenter schrieb:> Also gerade griffbereit hatte ich einen 0.47 uF Elko.
Das wird kein ELKO sein, denk ich ;-) 470n als ELKO - eher n Kerko o.ä.
Beim ELKO natürlich auch noch auf die Polung achten.
LuXXuS 909 schrieb:> Ach nochwas...die Referenz solltest du auch puffern.
Also auf dem Board sind 3 Kondensatoren verbaut.
Einer ist für die Vref+ und die beiden anderen (100nF + 10uF) für die
Versorgung des MSP430.
Bedeutet wohl, dass es das kaum sein kann, oder?
PICler schrieb:> Nehme doch einfach einmal einen simplen Spannungsteiler> direkt an die Pins angelötet.
Ich werde das mal probieren, aber langsam bin ich am verzweifeln... :-)
Guenter schrieb:> lso auf dem Board sind 3 Kondensatoren verbaut.
Laut Datenblatt des Boards ist der C für Vref+ zumindest von Haus aus
nicht verbaut.
Schau mal, was an Pin7 des Sockels dran hängt.
Zuerst einmal Suche, woher die Störungen kommen:
Kondensator (einige -zig uF) von Eingang nach Masse, Schalter zwischen
Schleifer des Poti und Eingang. Schalter schließen (Aufladen des C),
Schalter öffnen (Zu messende Spannung nur aus dem Kondensator, nicht aus
dem Poti.
Wenn dann Unruhe, müsste die Störung aus Masse kommen.
Masseleitung des Kondensators an verschiedene Massepunkte legen -
Unruhe?
Wenn ja, andere Massepunkte nehmen, "ruhiger" Punkt auffindbar?
Wenn nein dürfte die Steuerung des Wandlers Fehler enthalten.
Oder Vref oder Vcc sind nicht ausreichend gepuffert.
LuXXuS 909 schrieb:> Schau mal, was an Pin7 des Sockels dran hängt.
Das stimmt. Laut Datenblatt sollte der nicht verbaut sein. Auf meinem
Board ist er aber drauf (C6). Ein 10 uF nach Masse.
Peter R. schrieb:> "ruhiger" Punkt auffindbar?
Danke für den Tipp. Ich werd mal versuchen was zu finden!
Und generell mal vielen Dank für die zahlreichen Antworten!!