www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Schwierigkeiten mit ADC neim AT90s2333


Autor: Tommy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Bin erst seit neustem in diesem "Geschäft" und probiere mal allerhand 
aus.
Jetzt wollte ich mal etwas mit dem ADC von dem dem AT90S2333 machen, 
aber so ganz hundertprozentig scheint es ja nicht laufen. Vielleicht 
liegt es aber auch nur an der Hardware. Habe als Analog-Eingang PC0 
genommen und AREF auf VCC gelegt (5V); AGND auf GND.

Nun steht in dem Datenblatt dass AVCC über ein Tiefpass mit VCC 
verbunden werden muss. Ist es notwendig?

Ich benutze den Code für ADC aus der Codesammlung, und es tut sich was. 
Aber ich denke wenn ich mit meinem PC0 auf VCC gehe, dann müsste bei 10 
bit auch ca. der max Wert (1024) angezeigt werden und bei Eingang auf 
Masse der min Wert (0) . Das ist leider bei mir nicht der Fall und bei 
Masse wird noch 112 angezeigt.
Ich denke, dass die Ausgabe und Umrechnung auf's Display bei mir i.o. 
ist.

Vielleicht kann mir einer helfen, was ich bei dem ADC noch nicht 
beachtet habe.

Grüsse

Tommy

Autor: Jonas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also du kannst auch einfach aref=avcc=vcc schalten. das mit dem lowpass 
ist nur zur genauigkeitsverbesserung (glaub ich).

Autor: Günter König (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Jonas, Hi Tommy,
das die Anzeige eben nicht 0 oder 1024 ist, ist eben das Problem des 
fehlenden Tiefpasses.
Es sollte 1. immer ein Tiefpass bestehend aus R = 10 Ohm und C = 22µF in 
die AVCC Leitung und auch ein Tiefpass in die PC0 Leitung.
Hie reicht aber als Widerstand ein Wert von 1KOhm.

So denn,
Günter

Autor: Tommy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann vielen Dank mit VCC an AVCC klappt es auch gut, vorerst.
Mit der weiteren Beschaltung werde ich es aber auch bald mal probieren.

Autor: Tommy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe aber eine nächste Schwierigkeit.

Jetzt liegen die Werte zwischen 0 und 1023 bei 10 bit, aber ich möchte 
sie gerne z.B. in Werte zwischen 0 und 5V umrechnen.

Wie mache ich das am besten.
Versuche es derzeit den Messwert mit einem Faktor zu multiplizieren z.B. 
bei 8bit
5/255=196 (ohne beachtung der Nullstellen) jedoch entstehen so grosse 
Rundungsfehler.

Wenn ich mit einem genauern Faktor Rechnen möchte,dann muss ich wieder 
16bit miteinander multiplizieren usw.

Gibt es einen anderen genaueren  oder besseren Weg auf den ich gerade 
nicht draufkomme?

Vielen Dank im Voraus

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.