Hallo, möchte am PA3 des Attiny84 einen analogen Wert einlesen. Die anderen Pins des Ports A werden als Ausgänge verwendet. Nun kann man im ADMUX die Bits REFS1 und REFS0 einstellen. Habe es schon im Öfteren versucht, und es hat leider nicht geklappt. Da die anderen PINs genutzt werden, möchte ich die interne Referenzspannung nutzen. (REFS1=1, REFS0=0) Was macht die Referenzspannung denn genau? Kann ich auch REFS1=0 und REFS0=0 verwenden? Habe den Code aus der AVR GCC Anleitung zum Testen genutzt, natürlich abgewandelt und mit dem richtigen Kanal PA3. Kann es den überhaupt funktionieren, wenn die anderen PINS alle Outputs sind? Das Datenrichtungsregister ist im Programm vor den ADC Einstellungen
iGast schrieb: > Da die anderen PINs genutzt werden, möchte ich die interne > Referenzspannung nutzen. (REFS1=1, REFS0=0) > > Was macht die Referenzspannung denn genau? Sie ist die Referenz, bei der grob gesagt, der ADC sagt "100%". Der ADC liefert dir keinen direkten Spannungswert. Sondern er teilt dir mit, wie gross die gemessene Spannung ist, in Relation zu dieser Referenzspannung. Quasi ein Prozentwert (nur mit Zahlenwerten von 0 bis 1023 anstelle von 0 bis 100) > > Kann ich auch REFS1=0 und REFS0=0 verwenden? Natürlich. Warum solltest du nicht können? Welche Referenzspannung du wählst, hängt davon ab, wie gross die zu messenden Spannungen sind. Denn der Wert den du vom ADC kriegst, kann nicht größer als 1023 werden (also quasi: nicht mehr als 100%). Die zweite Restriktion bei einer externen Referenzspannung wäre: du kannst mit dieser Spannung nicht größer als ein Grenzwert werden. Da du aber ohnehin die Referenspannung intern verschalten willst, hast du im Grunde nur 2 Optionen. Entweder du nimmst die Versorgungsspannung als Referenz (also wohl die 5V) oder du nimmst intern generierte 1.1V (wobei die 1.1V auch nicht so genau sind. Sie sind stabil, aber nicht genau 1.100000V) > Habe den Code aus der AVR GCC Anleitung zum Testen genutzt, natürlich > abgewandelt und mit dem richtigen Kanal PA3. > > Kann es den überhaupt funktionieren, wenn die anderen PINS alle Outputs > sind? Ja klar funktioniert das. Code zeigen, dann kann man dir sagen, was du falsch übernommen hast.
Kurze Frage noch zum Anschluss. Habe einen Poti an 3V, wie auch der attiny84 an 3v betreibe. Der Schleifer ist am PA3 angeschlossen und der dritte Fuß am GND also Spannungsteiler über Poti. Müsste doch auch stimmen oder?
iGast schrieb: > Kurze Frage noch zum Anschluss. Habe einen Poti an 3V, wie auch der > attiny84 an 3v betreibe. Der Schleifer ist am PA3 angeschlossen und der > dritte Fuß am GND also Spannungsteiler über Poti. Müsste doch auch > stimmen oder? Ja. passt. In dem Fall nimmst du dann Vcc als Referenz.
Karl Heinz schrieb: > iGast schrieb: >> Kurze Frage noch zum Anschluss. Habe einen Poti an 3V, wie auch der >> attiny84 an 3v betreibe. Der Schleifer ist am PA3 angeschlossen und der >> dritte Fuß am GND also Spannungsteiler über Poti. Müsste doch auch >> stimmen oder? > > Ja. passt. > > In dem Fall nimmst du dann Vcc als Referenz. aber dein Messwert ist pro Digitalwert 0-1023 nur 0,0977% vom Messwert Du glaubst das die Referenz, dein VCC 3,3V ist, ist sie 3V hast du schon mal 10% Fehler. ist immer doof wenn die Referenzspannung schwankt, abnimmt bei Betteriebetrieb, oder man sie nicht kennt. Deswegen interne 1,1V nehmen und wenigstens 1x messen, die Teiler natürlich an diese anpassen, also Poti an Vcc gilt dann nicht ;-)
:
Bearbeitet durch User
Joachim B. schrieb: > Du glaubst das die Referenz, dein VCC 3,3V ist, ist sie 3V hast du schon > mal 10% Fehler. ist immer doof wenn die Referenzspannung schwankt, > abnimmt bei Betteriebetrieb, oder man sie nicht kennt. Was in diesem Fall aber keine Rolle spielt, da sein Messwertaufnehmer von der selben Spannungsquelle gespeist wird. In dem Masse, in dem die Referenzspannung schwankt, schwankt auch die Spannung am Poti, so dass sich im Endeffekt alles wieder ausgleicht. > > Deswegen interne 1,1V nehmen Dann allerdings hätte er wirklich ein Problem mit seinem als Spannungsteiler an Vcc angeschlossenem Poti.
Joachim B. schrieb: > Du glaubst das die Referenz, dein VCC 3,3V ist, ist sie 3V hast du schon > mal 10% Fehler. ist immer doof wenn die Referenzspannung schwankt, > abnimmt bei Betteriebetrieb, oder man sie nicht kennt. > > Deswegen interne 1,1V nehmen und wenigstens 1x messen, die Teiler > natürlich an diese anpassen, also Poti an Vcc gilt dann nicht ;-) Und deswegen kommt alles an Vcc und es interessiert nicht die Bohne, ob das 1,8V oder 5,5V oder irgendwas dazwischen sind. mfg.
iGast schrieb: > möchte am PA3 des Attiny84 einen analogen Wert einlesen. Die anderen > Pins des Ports A werden als Ausgänge verwendet. Karl Heinz schrieb: > Was in diesem Fall aber keine Rolle spielt, da sein Messwertaufnehmer > von der selben Spannungsquelle gespeist wird. im Beispiel das Poti, wenn das Ergebins nur die Stellung des Potis sein soll hast du Recht, wenn später das Ziel ist externe Spannungen zu messen dann hast du evtl. Unrecht. ;-)
Lass uns erst mal mit dem arbeiten, was er beschreibt. Wenn er das dann hat, dann kann man immer noch auf Sonderfälle eingehen, sofern das dann noch nötig sein sollte.
:
Bearbeitet durch User
Vielen Dank für Eure Beiträge. Jetzt wird es mir langsam klar wie die ADC genau funktioniert und wie der Zusammenhang mit der Referenzspannung ist. Kann das Tutorial evtl. angepasst werden? Eure Antworten waren einfach zu verstehen. Aber für heute mache ich Pause und lasse das Wissen setzen. Ein erster Test funktionierte schon mal.
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.