AVR - Bandgap an einen Pin schalten zum Messen?

Gast #1500503
Kann man die Bandgapspannung an einen Pin schalten und direkt messen?
In meinem Fall ein ATtiny(2|4|8)5

symbol    VBG
parameter Bandgap reference voltage
condition VCC = 5.5V, TA = 25°C
min       1.0
typ       1.1
max       1.2
units     V

Also etwa 10 % Fehler, das möchte ich durch Kalibrieren verbessern.
Gast #1500513
Danke Falk, aber ich sehe im Mux nichts dazu, wie das vonstatten geht.
Ich finde auch nichts dazu, dass die Ausgewählte REF Spannung 
automatisch am AREF Pin anliegt. Oder erschließt sich das aus dem 
zweiten Satz?

Port B, Bit 0 - MOSI/AIN0/OC0A/OC1A/DI/SDA/AREF/PCINT0
AREF: External Analog Reference for ADC. Pullup and output driver are 
disabled on PB0 when the pin is used as an external reference or 
Internal Voltage Reference with external capacitor at the AREF pin.

Ich versuchs mal, danke.
Gast #1500532
Die 2.56 V lassen sich mit

ADCSRA  |= (1<<ADEN);

ADMUX = (1<<REFS2) | (1<<REFS1) | (1<<REFS0);

while(1);

auswählen und an AREF messen (wie in der Tabelle zu ADMUX beschrieben), 
aber mich interessieren wegen der indirekten Messung von VCC eben die 
1.1 V.

Dann gehe ich davon aus, dass das nicht geht und versuche es indirekt.
Gast #1500692
> Kann man die Bandgapspannung an einen Pin schalten und direkt messen?

Mal eine Gegenfrage, dein AD-Wandler verwendet diese Spannung doch auch 
als seine eigene Referenz. Wie kannst du dann erwartet das er sie selber 
messen kann?

Olaf
#1500742
weil deine Annahme eben falsch ist. Im oben beschriebenen Zenario 
benutzer er VCC als ARef und misst die interne ARef als wäre sie am 
Eingang eines ADC Pins.

Übrigens ist auch exakt das die Lösung für obige Frage, du benötigst 
garkeinen ARef pin mehr. Messe wie oben beschrieben die ARef und im 
gleichen Moment VCC mit Multimeter. Dann kannst du dir das alles extern 
ausrechnen.

Gruß Hagen
#1500755
natürlich geht es auch über den ARef Pin, aber wenn du eh später VCC 
über die Bandgap messen möchstest kannst du auch VCC mit Multimeter 
messen und en Korrekturwert für die Bandgap ausrechnen. Dir geht es 
doch, wenn ich dich richtig verstehe, darum die Bandgap zu kalibrieren 
damit du VCC exakter messen kannst.
Der Vorteil ist eben das du die Bandgap unbelastet misst und somit näher 
der Realität kommst. Legst du Bandgap an ARef und dort falsches 
Multimeter dran dann kann es falsche Messresultate geben.

Gruß Hagen
#1500766
Je nach AVR unterschiedlich,
ATTiny 2/4/84 gehts nicht laut Datenblatt
ATTiny 2/4/85 gehts mit REFS0 bis REFS2 gesetzt siehe Datenblatt Seite 
138 letzter Eintrag in Tabelle 17-3, und wenn du möchtest lese ich dirs 
auch noch vor. Allerdings die 2.56V Referenz die meiner Meinung nach von 
der 1.1V abhängig ist.
Nimm die indirekte Meßmethode die ist eh besser da du eben unbelastet 
die 1.1V im AVR misst und somit alle sonstigen Unlinearitäten des AVR 
ADC gleich mit misst und somit später auch kompensierst und noch einen 
Pin sparst.

Gruß Hagen

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.