Forum: Analoge Elektronik und Schaltungstechnik AVR: Strom durch ADC-PIN wenn AVR spannungslos


von Bernhard (Gast)


Lesenswert?

Hallo,

hab schon das Datenblatt durchsucht, bin aber leider nicht fündig 
geworden.

Mega88 soll per 3,3V Regler aus einer LiIon-Zelle betrieben werden und
soll (Spannungsteiler) seine eigene Batteriespannung messen.
Wenn jetzt der Regler per manuellem Schalter auf Off steht, ist der AVR
spannungslos

Kann mir jemand sagen, ob dann die Spannung am ADC-Pin dem
AVR schadet bzw. wieviel Strom ungefähr durch den Eingang fließt?

Ich vermute mal, daß es einen Querstrom durch die Clampingdiode des
Eingangs gegen Vcc des AVRs gibt.
Also müßte man wohl einen Widerstand in Serie vorsehen.
Wie groß darf der sein um die Messung nicht zu (zu arg) zu verfälschen?


MfG
Bernhard

P.S. Zugegeben, der Ein/Aus-Schalter könnte auch den ADC-Pin
schalten, die Frage bleibt aber trotzdem.

von Andreas K. (a-k)


Lesenswert?

Der zulässige Quellwiderstand (-Impendanz) steht m.W. im Datasheet bei 
den ADC-Daten. Der maximale Strom steht unter "absolute maximum 
ratings", sollte aber schon im Interesse der Batterielebensdauer nicht 
annähernd ausgereizt werden, denn damit umgehst du den Regler und 
betreibst den Mega88 über die Schutzdiode.

Warum Regler? Der Mega88 läuft von 1,8V bis 5,5V. Und ohne Regler lässt 
sich die Versorgungsspannung mit Arefmux=Vcc und ADCmux=Bandgap ganz 
ohne externen Eingang messen.

von Bernhard (Gast)


Lesenswert?

Hallo,

im Datenblatt (auch in denen anderer AVRs) finde ich nur den
Eingangswiderstand eines ADC-Pins: 55-100MOhm.

Regler deswegen, weil der AVR noch mit anderen Teilen "sprechen"
soll, die halt fix 3,3V möchten und auf die ich keinen Einfluß
habe.

Aber anscheinend war die Vermutung ja ehe nicht verkehrt, daß der AVR
seine Spannung über die Clampingdiode beziehen würde.
Und damit fällt das ja ehe flach.

Werde wohl einen PMOSFET in die Leitung setzen, der nur leitet,
wenn der AVR auch unter Spannung steht.


Danke!

Bernhard

von Falk B. (falk)


Lesenswert?

@ Bernhard (Gast)

>Werde wohl einen PMOSFET in die Leitung setzen, der nur leitet,
>wenn der AVR auch unter Spannung steht.

Warum einfach, wenns auch umständlich geht. Was spricht gegen einen 
Serienwiderstand von 1..10 MOhm?
MFG
Falk

von Andreas K. (a-k)


Lesenswert?

Im aktuelles Datasheet vom Mega88 steht es wunderschön beschrieben auf 
Seite 252.

Gibt's irgendwo einen Kurs im Lesen von Datasheets? Wäre recht 
nützlich...

von Andreas K. (a-k)


Lesenswert?

> Warum einfach, wenns auch umständlich geht. Was spricht gegen einen
> Serienwiderstand von 1..10 MOhm?

Nur das darauf totsicher folgende Problem mit der Quellimpedanz und der 
S/H-Kapazität des ADC. Das ist zwar machbar, aber einfach ADCmux 
umschalten und messen ist dann halt nicht drin.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

>Warum einfach, wenns auch umständlich geht. Was spricht gegen einen
>Serienwiderstand von 1..10 MOhm?

Die Verfälschung des Meßsignals vielleicht. Der Innenwiderstand der zu 
messenden Quelle sollte nicht größer als 10kOhm sein.

@Bernhard:
Meines Erachtens macht es keinen Sinn, den AVR von der Versorgung 
abzuklemmen, stattdessen könnte man ihn schlafen legen. Bei optimaler 
Konfiguration der internen Module braucht er dann nur noch etwa 1µA, das 
ist so gut wie abgeschaltet. Und den Regler brauchst Du auch nicht. 
Li-Zellen haben bis max. 4.2V, das ist für den Mega völlig okay.

von Falk B. (falk)


Lesenswert?

@ Andreas Kaiser (a-k)

>Nur das darauf totsicher folgende Problem mit der Quellimpedanz und der
>S/H-Kapazität des ADC.

Dagegen helfen 100nF am ADC-Pin.

MFG
Falk

von Andreas K. (a-k)


Lesenswert?

> Dagegen helfen 100nF am ADC-Pin.

Ja, stimmt. Bleibt noch das zweite Problem: 100MOhm Eingangswiderstand 
lt. Datasheet. Bei 1MOhm in Serie ist das wohl noch ok, bei 10MOhm...

von Falk B. (falk)


Lesenswert?

@ Andreas Kaiser (a-k)

>Ja, stimmt. Bleibt noch das zweite Problem: 100MOhm Eingangswiderstand
>lt. Datasheet. Bei 1MOhm in Serie ist das wohl noch ok, bei 10MOhm...

Na dann eben 1 MOhm, macht bei 4V Zellenspannung max. 4uA. So what.

MFG
Falk

von Andreas K. (a-k)


Lesenswert?

Muss man nur dran denken, beim Power-On-Restart vom AVR ein bischen bis 
zur ersten Messung zu warten. Weil der 100nF Kondensator erst aufgeladen 
werden muss.

von Falk B. (falk)


Lesenswert?

@ Andreas Kaiser (a-k)

>Muss man nur dran denken, beim Power-On-Restart vom AVR ein bischen bis
>zur ersten Messung zu warten. Weil der 100nF Kondensator erst aufgeladen
>werden muss.

Ja, ca. 0,5s. Wenn das zu lange ist, muss der Kondensator halt auf 10nF 
oder weniger verkleinert werden. Sollte locker gehen, schliesslich ist 
die Sample-Kapazität nur um Bereich von 20pF oder so.

MFG
Falk

von Bernhard (Gast)


Lesenswert?

Hallo,

erstmal vielen Dank für Eure Diskussion.
Ich habe wieder einiges gelernt.

Nur eines fällt mir auf:

Wie häufiger hier im Forum wird bei Fragen zum Stromsparen
immer darauf verwiesen, man solle den AVR einfach schlafen legen,
statt ihn abzuschalten.  "Sind ja nur ein paar µA"!

Das geht aber IMHO doch nicht, wenn man (für einen stabilen Takt, auch 
bei
stark schwankenden Temperaturen) einen externen Quarz-Oszi hat. Die 
Dinger
brauchen ja im Bereich von mA.
Selbst wenn man diesen auch schlafen legen kann, wie kann dann ein AVR
z.B. auf einen extern Interrupt hin wieder aufwecken?


MfG
Bernhard

von Andreas K. (a-k)


Lesenswert?

Bernhard wrote:

> Selbst wenn man diesen auch schlafen legen kann, wie kann dann ein AVR
> z.B. auf einen extern Interrupt hin wieder aufwecken?

Indem man einen Controller verwendet, der seine Taktquelle umschalten 
kann. Gibt's öfter, aber eben nicht bei den AVRs.

Batteriebetrieb mit externem Oszillator ist allerdings eher selten.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

>Das geht aber IMHO doch nicht, wenn man (für einen stabilen Takt, auch
>bei stark schwankenden Temperaturen) einen externen Quarz-Oszi hat. Die
>Dinger brauchen ja im Bereich von mA.

Dazu nimmt man nicht einen Quarz-Oszillator, sondern einen einfachen 
Quarz. Den kann der Controller selber zum Schwingen anregen und im Fall 
der Sleep-Funktion auch abschalten. Somit braucht der Quarz im Sleep 
exakt 0 (Null) mA.

>Selbst wenn man diesen auch schlafen legen kann, wie kann dann ein AVR
>z.B. auf einen extern Interrupt hin wieder aufwecken?

Die externen Interrupt-Pins INT0 und INT1 (bei größeren AVRs auch noch 
mehr) lassen einen level-getriggerten Interrupt im Power-Down zu und 
wecken ihn somit. Neuere AVRs verfügen zusätzlich über 
PinChange-Interrupts, die einen Interrupt bei jedem Pegelwechsel 
auslösen können. Auch diese können den AVR aus dem Power-Down wecken. 
Alternativ kann man auch den Watchdog programmieren, den AVR alle paar 
Sekunden zu wecken. Ist nichts wichtiges in der Zwischenzeit passiert, 
legt man ihn wieder schlafen.

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
Noch kein Account? Hier anmelden.