Stromverbrauch sleep

Gast #579909
Lesenswert?

Sleep hält (beim AVR jedenfalls) je nach Modus nur die Taktfrequenz an.
Wenn du die IO-Pins hochohmig schalten willst, dann führe einen 
Brown-Out-Interrupt aus (Flag setzen) und lege den µC in dieser ISR 
Schlafen.
Gast #580019
Lesenswert?

Welche Aussenbeschaltung hängt denn am PIC und wie ist der Zustand
der Ports vor der SLEEP-Anweisung ?

Kann es sein, dass der Controller sofort wieder aufgeweckt wird, dass
er also nur ganz kurz im SLEEP-Zustand ist ?

Kannst Du den SLEEP-Zustand erkennen ?

Um welchen Baustein handelt es sich denn genau ?
Gast #580116
Lesenswert?

Die LED wird aber vorm Schlafenlegen ausgeschaltet, oder ?

Breakpoint gesetzt ? Dein Controller hängt also am
Debugger dran, dann würde ich den Strommesswerten
keinen Glauben schenken, das sind völlig andere Rand-
bedingungen.

Flashe das Teil doch mal und lass es ohne Debugger
laufen und dann nochmal messen.

Wie den SLEEP-Zustand feststellen ? Bei externen Quarz
dürfte im SLEEP-Zustand kein Systemtakt mehr messbar sein.
Gast #580679
Lesenswert?

Welcher Typ ist es denn genau (P18F???) und auf welche Art
und wie schnell ist er denn getaktet ?

Sind die 30mA im Normalbetrieb eigentlich ok, was sagt das
Datenblatt dazu ?

Könnte man Deinen Code sehen, habe zwar wenig mit den PICs
zu tun, aber man hätte zumindest mehr Anhaltspunkte.
Gast #580970
Lesenswert?

@gast:
Um das Problem einzukreisen würde ich den Code erstmal (per
Auskommentierung) so reduzieren, dass nichts anderes passiert
als dass man definiert in den SLEEP-Modus kommt und diesen
mittels Deiner Bedingung auch wieder verlassen kann. Das sind
sicher nur ein paar Zeilen Code, die dann übrigbleiben.

Dann würde ich feststellen ob der Controller sich tatsächlich
im SLEEP-Modus befindet, z.B. mittels Messung des Taktes, und
diesen auch wie gewünscht wieder verlässt. Wenn die beiden
Zustände sicher sind, dann den Strom direkt in der VDD-Leitung
zum Controller messen, natürlich ohne angeschlossenen Debugger
und ohne externe Lasten zu treiben.

Es gibt vermutlich auch bei den PICs verschiedene SLEEP-Modi
mit unterschiedlichen Auswirkungen. Ich hätte ja gerne mal ins
Datasheet geschau, aber scheinbar willst Du den genauen Controllertyp
nicht verraten. :-)
Gast #581591
Lesenswert?

also ich habe jetzt nur den sleep befehl laufen lassen und an allen Pins 
gemessen. Dabei ist mir aufgefallen das am OSC Pin 20mA getrieben 
werden. Der versuch fand auf einem EV. Board statt. Also der Quarz wird 
während er sleep ausführt mit 20mA versorgt.
?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren