www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Bascom: Ad-Wandlerwert zwischen 1023 und 7500..


Autor: Manuel Herr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

habe es nun geschafft mit internem quarz (ist doch serie auf 1Mhz
eingstellt, oder) den tiny26 mit dem display zu belegen....
leider zeigen die werte nur müll irgendwie an:
ich lese die ersten 3 kanäle aus und lasse sie anzeigen: 1023.
lege ich nun ca 1,8v an wird aus der 1023 ca 7500..wohlgemerkt bei den
ersten 3 gleichzeitig, obwohl ich nur beim ersten kanal die spannung
anlege....was mach ich falsch?

aref=5V vom 7805
avcc=5V vom 7805 über ein poti (0-1kOhm) und 22µf an masse.
agnd, gnd=masse vom 7805

egal wie ich den poti drehe bei avcc, es steht immer 1023 auf dem
display....was kann das sein?


ausser "Config Adc = Single , Prescaler = Auto"
       "Start Adc"

kommt nichts weiter zum adc im bascom-quelltext vor
ein zur überprüfung angebrachter zähler läuft wunderbar, also kein
programmierungs/anzeigefehler...

wer kann mir da helfen bitte,danke und einen guten rutsch euch allen!!!

Autor: Ratber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Config Adc = Single , Prescaler = Auto , Reference = Avcc
                                         ----------------

Autor: thkaiser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Kanäle werden gemultiplext, es gibt eigentlich nur einen A/D-Wandler
im Controller. Wenn man Analog-Eingänge offen läßt, können sich die
Werte von anderen, beschalteten Eingängen darauf übertragen. Wenn Du
die beiden anderen Eingänge auf Masse legst oder mit einer eigenen
Quelle belegst, dann ist dieser Effekt weg.

Autor: Manuel Herr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ratber: referenz=avcc brauch ich doch nur,wenn ich aref nicht
belege,oder?
so hatte ich es in einem meiner ersten versuche, da hatte er bei
0ohm(avcc) 340 und bei 355ohm 1023 auf dem display...ich werde mal es
mit masse probieren....

Autor: Manuel Herr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
okay, habe nun einfach mal masse an adc0 und adc1 rangelötet: jetzt
stehen 2 schöne Nullen auf dem Display und wenn ich ca 1,8V ranhalte
passiert gar nichts. dafür springen adc2, 3 und 4 von ca 650 bis 750
bzw 100-900.......
hilfe, was nun?

Autor: Klaus Angenendt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Manuel,

AREF, AVCC und AGND müssen bei AD-Wandlung immer belegt sein.
AREF und AVCC an VCC, AGND an Masse.
Nimm ein Poti, den Schleifer an den AD-Pin,
die anderen Anschlüsse vom Poti an VCC und GND.

Gruß Klaus

Autor: Manuel Herr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mh, da ich noch am anfang meiner ad-wandlersache stehe, frage ich mal,
was das bringen sollen,
wenn ich vcc und gnd per poti auf einen ad-pin lege... bzw was ich mit
meine leitung machen sollen,die zwischen 0-5v (momentan 1,8v) bringt...

Autor: Klaus Angenendt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Manuel,

das ist natürlich nur um dein Programm zu testen.
Anschließend legst du deine 1,8V auf den AD-Pin.

Gruß Klaus

Autor: thkaiser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wir haben uns nicht so richtig verstanden...

1.
UNBENUTZTE A/D-Eingänge auf definiertes Potential legen (z.B. Masse).
Wenn Du einen A/D-Eingang auf Masse legst, und dann versuchst, 1.8V zu
messen, dann kann das natürlich nicht funktionieren. Die "saubere
0" zeigt ja, daß es prinzipiell funktioniert. Wenn Du die unbenutzten
Eingänge offen läßt, dann mußt Du damit leben, daß der A/D-Wandler Müll
ausgibt.

2.
Was Klaus meinte, ist ein Test-Schaltkreis. Wenn Du ein Poti zwischen
GND und VCC anschließt und den Schleifer an einen A/D-Eingang, bekommst
Du, je nach Schleiferstellung, eine Spannung von 0-5V an den A/D-Pin.
Somit kannst Du die Funktion Deiner Schaltung und auch der Software
testen. Ich habe den Eindruck, daß Du nicht nur A/D-Wandler mäßig am
Anfang stehst, sondern daß auch elementare Grundlagen in der
Elektronik fehlen (z.B. was ist ein Poti?)

3.
Wie schon von Klaus geschrieben:
AGND mit Masse beschalten
AVCC und AREF mit VCC, Alternativ kann auch AREF mit einer kleineren
Spannung als VCC beschaltet werden, um den Meßbereich zu spreizen.
Hierbei die im Datenblatt angegebenen Grenzwerte beachten! In den
Atmel-Datenblättern ist eine Beschaltung von AVCC und AREF mit einem
Tiefpaß (R/C-Glied) beschrieben, die mit Sicherheit nicht schaden
kann.
Weitere Frage: Wie "sauber" ist Deine Versorgungsspannung? An die
Stützkondensatoren gedacht? Welche Restwelligkeit hat Deine "ca.
1,8V" - Spannung? Dies alles sind Einflüsse, die die Ergebnisse der
A/D-Wandlung beeinflussen können.
Und noch etwas, das mir gerade einfällt: Falls die 1,8 V von extern
kommen, dann ist Dir bekannt, daß Du GND der Prozessorschaltung und GND
der externen Schaltung verbinden mußt, um ein Bezugspotential zu
bekommen?

Autor: Ratber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Manuel

""@ratber: referenz=avcc brauch ich doch nur,wenn ich aref nicht
belege,oder?
so hatte ich es in einem meiner ersten versuche, da hatte er bei
0ohm(avcc) 340 und bei 355ohm 1023 auf dem display...ich werde mal es
mit masse probieren....""


Die Zeile war nur als Hinweis darauf das man die Quelle auch festlegen
kann (Interne Ref. , Ref. am Ref-Port oder einfach AVCC) und ich halte
es so das ich die Spannungsref. immer definiere damit es keine
überaschungen gibt.

In der "unübersichtlichen" (Ich weiß ,die is nicht der Brüller aber
wenn man etwas forscht dann findet man auch die versteckten
Angaben)Bascom Hilfe steht alles drinn.

ansonsten hab ich es auch so gemacht wie thkaiser es beschreibt und
alle ungenutzten AD-Ports mit nem Widerstand (10K.Es gehen auch andere
Werte aber von denen hab ich noch ca. 5000 Stück also verbrate ich se
recht oft für sowas)nach masse gelegt.

Autor: Manuel Herr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ratber das heißt,du schreibst trotz angelegter 5V an aref noch
"referenz=avcc" bei bascom mit rein?

Autor: Ratber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja !

Schließlich muß ich davon ausgehen das ich nicht weiß was vorher
eingestellt war (Intern,Extern etc.).
Ob Bascom bei fehlenden Pararmetern einfasch eine Grundeinstellung
vornimmt weiß ich jetzt nicht und ich habs auch noch nie ausprobiert
aber so hab ich klare Verhältnisse im Controller und für mich
persönlich kann ich jederzeit am Quellcode ablesen was Sache ist.


(Der Code wird dadurch auch nicht größer da die Configzeile ja kein
Bestandteil des "Programms" darstellt.)

Autor: Manuel Herr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
super es klappt!!! warum es heute geht und nicht schon gestern -keine
ahnung! auf jedenfall hab ich ref=avcc hinzugefügt und alles läuft.
besten dank ratber!!!!!!!!!

Autor: Ratber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Yo,kein Problem.

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.