Hallo, ich habe ein Problem mit dem ADC bei einem ATmega88. Ich möchte eine interne Spannungsreferenz verwenden, am AREF Pin hängt also ein 100nF-Kondensator. Bei AVCC = 5V als Spannungsreferenz (ADMUX = (1<<REFS0)) funktioniert es auch einwandfrei, nur ist da die Auflösung zu klein, da ich nur Spannungen zwischen 0.4V und 0.8V messen will. Deshalb wollte ich mit ADMUX = (1<<REFS1)|(1<<REFS0) die interne Referenz von 1.1V nutzen, die Beschaltung und alles andere sollte dabei ja gleich bleiben. Als Resultat bekomme ich aber immer 0 raus. Wie kann das denn sein? MfG Christian
> Als Resultat bekomme ich aber immer 0 raus. Wie kann das denn > sein? Glassgoogle: Ich vermute, Du schreibst nach dem Setzen der Referenzquelle auch noch die ADC-Quelle in ADMUX. Kann es sein, dass Du dabei die Referenzquelle wieder durch Überschreiben mit Nullen deaktivierst? KH
Nein, ich verwende Channel 0, und der wird auch nicht verändert. Außer in init-Funktionen setze ich Bits auch immer mit |=, um ja nichts ungewollt zu überschreiben...
Habe ich auch mal gemacht, auch für Mega88, ich erinnere dunkel das es da einen Trick/Falle gab. Das Ding war gerne wieder ausgeschaltet. Ich kriege das aber aus dem Kopf nicht zusammen, muß mal in den Code gucken und versuchen mich zu erinnern. (Sorry wenn das jetzt nicht so konkret hilft.)
Hallo Jörg, hast du inzwischen nachgeschaut? Ich hab leider immer noch nichts gefunden...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.