Hallo, ich schaffe mich als Anfänger jetzt schon den ganzen Nachmittag an diesem Prog. Ich habe zwei Potis am ATTINY13 an ADC2 und ADC3. Es wird aber immer nur der Wert von einem Poti für beide Schleifen verwendet, das zweite bleibt ohne Wirkung??? Vielleicht ist mal jemand so nett und schaut mal mit weiteren zwei Augen auf das Prog.... Ich benutze das AVR Studio, keine Fehlermeldungen, alles scheint gut zu sein.. Zu testen haben ich nur den Tiny mit zwei Potis, und ner LED am Ausgang. Vielen Dank :-)
Was soll das denn: > time1=ADCW; > time1=0; > time1 = ADCH; (speziell die ersten beiden Zeilen). Wenn Du nur 8 Bit brauchst und ADLAR gesetzt ist, dann brauchst Du auch nur ADCH auszulesen. Und es ist Platzverschwendung, für zwei 8-Bit-Variablen jeweils einen ganzen Integer zu reservieren. Hast Du Dir eigentlich schon mal den ADC-Code aus dem Tutorial angeschaut?
Hi, jep hab ich. Es war nur ein weiterer Versuch für den Fall, dass ich doch das komplette Wort einmal auslesen muss. Auch das es jetzt zwei getrennte Funktionen sind, ist nur ein Versuch gewesen. Eigentlich hatte ich den ADC einmal initialisiert und dann beide Werte nacheinander ausgelesen. Aber egal wie, da ist der Wurm drinn und ich habe keine Lupe... :-( Viele Grüße - Ronald
> ADMUX |= (1 << ADLAR)| // 8bit in ADCH > (1 << MUX0)| > (1 << MUX1); Haste mal überlegt, was mit den aus der jeweils anderen Funktion von vorher noch gesetzten Bits in ADMUX passiert, wenn Du das mit einem |= schreibst? MUX0 bleibt in Deinem Programm bis in alle Ewigkeit gesetzt, so dass nach dem ersten mal nur noch ADC3 abgefragt wird. Lass das | weg (in beiden Fällen), dann sollte es klappen.
Hi, ich habs geahnt... ein (zwei) Zeichen zuviel... Super, Danke, funzt :-) Eine Frage noch zum Verständniss. Ich hätte das eine Bit aber auch wieder löschen können um zum gleichen Ergebnis zu kommen? Also nochmal vielen Dank! Dann kann ich den ganzen Quatsch aus dem Code wieder rausnehmen.. Viele Grüße Ronald
Ronald Nehring wrote: > Eine Frage noch zum Verständniss. Ich hätte das eine Bit aber auch > wieder löschen können um zum gleichen Ergebnis zu kommen? Hättest Du. Ist aber überflüssig.
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.