Hi, ich habe um einige Punkte des AVR-GCC Tutorials abhaken zu können eine kleine Platine geätzt, welche später eine Lüftersteuerung darstellen soll. Leider habe ich nun ein Problem mit dem AD-Wandler. Dieser gibt mir immer den Wert 1023 zurück, obwohl an PC0 eine Spannung von ca. 2,5V bei 25°C anliegt. Ich benutze einen Atmega8A, die Referenzspannung ist AVcc, der NTC ist an PC0 und über PC1 erhalte ich meinen Spannungsteiler. Ich weiß leider nicht wo mein Fehler liegt, deshalb wäre es toll wenn Ihr mir weiterhelfen könntet.
neuling schrieb: > Hi, > > ich habe um einige Punkte des AVR-GCC Tutorials abhaken zu können eine > kleine Platine geätzt, welche später eine Lüftersteuerung darstellen > soll. > > Leider habe ich nun ein Problem mit dem AD-Wandler. Dieser gibt mir > immer den Wert 1023 zurück, obwohl an PC0 eine Spannung von ca. 2,5V bei > 25°C anliegt. > Ich benutze einen Atmega8A, die Referenzspannung ist AVcc, der NTC ist > an PC0 und über PC1 erhalte ich meinen Spannungsteiler. > > Ich weiß leider nicht wo mein Fehler liegt, deshalb wäre es toll wenn > Ihr mir weiterhelfen könntet. Aaalso, Ich nehme an PC1 soll als Spannungsversorgung des Spannungsteilers R1/NTC dienen. Wenn PC1 = high wird in der angeschlossenen Schaltung ohne NTC dieser Pegel auch an PC0 abgebildet, der Widerstand funktioniert also als Pullup. Wenn der NTC angeschlossen ist sollte sich an PC0 ein Teilerwert einstellen. Wie debuggen? NTC anschließen, an PC0 Spannung nachmessen. Spannung in Hex (ADC) umrechnen. Wenn Intern was anderes rauskommt Konfiguration des ADCs prüfen (Referenzen, Anschlüsse, Register). ARef richtig angeschlossen (liegt auf GND)? rgds
Muss nach einem Wechsel des Kanals nicht auch die erste Messung verworfen werden? Bei den Pics wars auf jedenfall so. Schon mal im continuous Modus probiert?
Wozu ist eigentlich D1 da. Pass' auf, dass Du sie nicht überlastest. Die ganze Schaltung incl. Anzeige hinter einer 4148 erscheint mir etwas grenzwertig.
ADC_Init verwendet result als Name einer lokalen variablen. Ich würde mir das noch mal überlegen. Keine Ahnung was der Compiler damit macht.
amateur schrieb: > ADC_Init verwendet result als Name einer lokalen variablen. wo sollte da ein Problem sein? Ist an aref ein C wie im Datenblatt angegeben? Wie ist die Spannung an PC0 und an aref? Fehlersuche gehört auch zum Geschäft!
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.