Nur so meine gedanken dazu....
Da gibts noch ein gedanken fehler glaub ich.Der AD-Wandler kann seine Rerferenzspannung aus 3 Quellen beziehen ( Datenblatt 2486M-AVR-12/03 für ATmega8 S.203)
AVCC
VBandgap
Aref
Die Referenz(spannungen) sind:
- AVCC
- Internal 2.56V (nicht VBandgap)
- Aref
Mann kann neben dem 8 ubligen AD-eingangen auch VBandgap als Eingang selectieren. (Fig 90, Pag 197, datenblat)
Damit kan mann die VBandgap Spannung messen.
Die Referenzspannung von 2.56V wird abgeleitet vom VBandgap.
VBandgap sollte 1.23V sein. ( = 256 / 2)
Da VBandgap abweichen kann zwischen 1.15V und 1.40V sollte auch die abgeleitete 2.56V referenzspannung
abweichen konnen vom 2.30V (2*1.15V) bis zum 2.80V (2*1.40V).
Wenn mann die 2.56V als referenzspannung einschaltet dann ist die maximalen Wert die auf Eingang PC5 gemessen werden kann
2.56V. Dass stimmt uberein mit hex Wert 0x3FF oder dezimal 1023. Da representiert jedes bit vom ad-wandlung 2.56V / 1024
ist 2.5mV. Durch die spannungteiler 12K/10K representiert jedes bit einen wert von 2,5mV*2.2=5.5mV.
So eine gemessene ADC Wert von hex 0x391 = Dezimal 913 stimmt uberein mit 913 * 5.5mV = 5.02V Batteriespannung.
Ich hab's bei meinen Asuro nachgemessen (mit ein billiges messgerat...) Ich messe 2.41V auf pin28 (ADC5) und gleichzeitig ein ADC Wert von 0x391 (Dezimal 913)
Dies sind 2.41V / 913 bit = 2.64mV pro bit (sollte 2.50mV pro bit sein)
Ist doch gar nicht schlecht.
Gruss
Henk
Lesezeichen