PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ADC Wert immer höher wie "0", normal ?



nalle
28.01.2008, 22:02
hallo,
wer weis bescheid,kann helfen
Habe ein MyAVR-Board mit ein AtMega 8.Wenn ich ein Analogeingang einlesen will,mit Bascom und habe den Eingang auf Masse z.B. Port C2
dann bekomme ich mit Getadc immer einen Wert der größer als "0" ist.
Wert meistens 18 oder 19.
Ich möchte an solch ein Eingang die Spannung messen. Doch wenn schon ein Wert gezählt wird ohne Eingangsspannung; stimmt doch was nicht oder?

freue mich über jeden Hinweis. Habe schon 2 Stück ATmega 8 probiert.

mfg. nalle

wkrug
28.01.2008, 22:09
Hast Du an dem ATMEGA irgendwelche Ports die höhere Ströme liefern oder aufnehmen müssen ? z.B. LED's oder Lämpchen ?
Wenn ja, klemm die mal ab und schau ob der Fehler immer noch auftritt.

Ist am AREF Pin ein Kondensator angeschaltet ( je nach dem welche Referenz verwendet wird ) ?

Ist der AVCC Pin über eine Drossel mit VCC verbunden und mit einem Kondensator gegen Masse entkoppelt ?

Das wären so die Fehlerquellen die mir dazu einfallen würden.

Besserwessi
29.01.2008, 18:28
Die ADC Eingänge können etwas Offset haben, der eventuell auch mal 1 - 2 LSB ausmachen kann, besonders wenn die Referenzspannung sehr klein ist. Ein wert von 18 oder 19 spricht aber für einen Fehler: fehlende oder viel zu kleine Referenzspannung, Kurzschluß am AREF pin, AGND oder AVCC nicht angeschlossen oder fehlende bzw. falsche Entkoppelkondensatoren, viel zu hoher ADC Takt.

bugmenot
29.01.2008, 18:36
Schau dir mal die AN120 (http://atmel.com/dyn/resources/prod_documents/doc2559.pdf) von Atmel an, da geht es um die Kalibrierung des ADCs.
Du solltest immer damit rechnen, dass die ADCs eine gewissen Ungenauigkeit aufweisen, die zum Glück aber recht einfach korrigierbar ist.

mfg
Markus

Dirk
29.01.2008, 20:12
... fehlende oder viel zu kleine Referenzspannung, Kurzschluß am AREF pin, AGND oder AVCC nicht angeschlossen oder fehlende bzw. falsche Entkoppelkondensatoren, viel zu hoher ADC Takt.
Ergänzung: Schlechte Masseverbindungen, Wechselstromeinstreuung bei Widerstand > 0 der ADC-Masseverbindung ...

Gruß Dirk

nalle
31.01.2008, 01:29
danke für die hinweise von euch habe nochmal alles durchgeschaut.
Fehler jetzt beseitigt. War ein Programierfehler .ich hatte an die ADC eingänge PullUp widerstände intern beschaltet.jetz abgeändert und schon geht alles einwandfrei

Ceos
01.02.2008, 09:44
Ist der AVCC Pin über eine Drossel mit VCC verbunden und mit einem Kondensator gegen Masse entkoppelt ?

Das wären so die Fehlerquellen die mir dazu einfallen würden.

Wie kann man so eine 100µH Drossel selber basteln? ich möchte nicht schon wieder zu Conrad dackeln müssen, hab haufenweise Draht hier, kann ich damit nicht irgendwie selber ne Drossel wickeln, wenn ja wieviel windungen ? geht das auch ohne graphitkern ? ich schau gleich nochmal nach, aber ich meine das ich in der minimalbeschaltung für Atmegas im wissenbereich keine drossel am VCC und AVCC gesehen habe ... könnte ja mal wer mit befugnis nachtragen, eventuell auch ne bauanleitung zum selber machen ... danke schonmal für antwort

PS: im moment erhalte ich im wissenbereich nur noch
Fehler in der Datenbank
aus RN-Wissen, der freien Wissensdatenbank
Es gab einen Syntaxfehler in der Datenbankabfrage. Die letzte Datenbankabfrage lautete:

(SQL query hidden)

aus der Funktion "MediaWikiBagOStuff:_doquery". MySQL meldete den Fehler "1016: Can't open file: 'mwobjectcache.MYI'. (errno: 145) (localhost)".

Besserwessi
01.02.2008, 12:31
Bei der Drosselspule kommt es nicht so sehr auf den Wert an, Hauptsache etwas wWiderstand für HF. Die einfachste Form ist eine Ferriteperle auf einen Draht. Kerne aus Graphit sind nicht üblich, denn der Kern sollte Ferromagnetisch sein um eine Wirkung zu haben.
Wenn nicht viel Last an den AVCC gespeisten Pins ins hängt, kann man auch einen kleinen Widerstand von ca. 22-50 Ohm nehmen.

Man könnte theoretisch auch eine Luftspule nehmen, dann strahlt man unnötig viel HF störungen ab. Die Induktivität von Luftspulen kann man berechnen z.B.
http://my.athenet.net/~multiplx/cgi-bin/airind.cgi
Eine Luftspule wird aber schon unpraktisch gross.

uwegw
01.02.2008, 13:02
Statt der Drossel an AVCC kann man auch nen Widerstand mit 50 bis 100 Ohm verwenden, wenn grad keine Spule zu Hand ist. In Verbindung mit dem Kondensator hat man dann einen RC-Tiefpass. Der filtert nicht ganz so gut wie der LC-Tiefpass aus Spule und Kondensator, aber immer noch besser als gar kein Filter. Ein Nachteil ist jedoch ein größerer Spannungabfall.