PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Powerdown



olis99
21.01.2005, 10:31
hallo zusammen.

bin bascom anfänger und muß im rahmen eines schulprojektes eine ir-fernbedienung bauen die zur steuerung von jalousien eingesetzt wird.

nun habe ich folgendes problem:

ich möchte nach einer zeit x in der kein taster auf der fernbedienung gedrückt wird, das der µC in den powersave m odus wechselt, um den energie verbrauch so gering wie möglich zu zu halten. nach der betätigung eines bestimmten tasters (am besten wäre noch egal welcher taster) auf der fernbedienung soll der µC wieder hoch fahren und einsatzbereit sein.

beutze keine tastfeld-matrix. taster sind einzeln auf die ports geführt und liegen gegen masse. (intern. pullup aktiv)

danke schon mal für eure antworten

oli

21.01.2005, 10:47
Schick ihn schlafen, aber wie weckst du ihn auf, wenn er seine Ohren zu hat? Hat denn der verwendete uC einen powersave modus? welche events können ihn wieder hochfahren?

MfG GaronG

olis99
21.01.2005, 11:13
der µC ist ein atmega8L

und der hat nen powerdown mode.
aber wenn ich den befehl "powerdown" einfach irgend wo im sourcecode einhacke so reagiert der µC zwar nicht mehr aber die stromaufnahme bleibt unverändert.

tobimc
21.01.2005, 11:27
Hi

Vielleicht könntest du einen empfindlichen Erschütterungssensor nehmen, und
wenn der meldet (Fernbedinung wird vom Tisch genommen)
wird ein Interrupt ausgelöst, und der µC fährt hoch.

Du kannst auch dem Watchdog benutzen.
Und durch ihn alle... xy ms einen Interrupt auslösen, und checken,
ob Tasten gedrückt wurden.
(Braucht mehr Strom.)

Ganz liebe Grüße,
Tobi

olis99
21.01.2005, 11:59
wie gelange ich eigentlich per bascom-basic in den powersave modus.
bzw in den energiesparmodus?

tobimc
21.01.2005, 13:04
HI

Einfach

powerdown
oder
idle

Ganz liebe Grüße, Tobi

21.01.2005, 13:06
dachte ich auch. tut sich aber nix. die stromaufnahme ändert sich nicht.
muß ich nocht irgend etwas configurieren?

tobimc
21.01.2005, 13:11
Hi

Hm. Habe da keine Erfahrung damit.
Definiere mal die Interrupts, und eine ISR.

Was nimmt der Atmel denn auf?

Ganz liebe Grüße, Tobi

RCO
21.01.2005, 13:42
Mal ne ganz andere Idee:
Ich gehe mal davon aus, dass die Taster direkt an an Masse oder Vcc sitzen. Wenn du dann von hier eine Diode (in entsprechender Richtung) zum Versorgungspin des AVRs schaltest, wird er nur so lange Saft bekommen, wie die Taste gedrückt ist. Je nachdem wie hoch der Sperrstrom der Diode ist, geht der Stromverbrauch während der Zeit in der du keinen Taster drückst gegen 0!

MFG Moritz

tobimc
21.01.2005, 15:45
Hi

Na det is ne tolle Idee!
Zeitlich dürfte es da kaum Probs geben.

*dafür*

Ganz liebe Grüße, Tobi

RCO
21.01.2005, 16:06
Keine Ursache ;-)
Evtl. könnte man noch einen Transistor dranhängen, damit der uC noch ein wenig mehr Zeit hat. hab auch mal lange gegrübelt, wie man sowas am besten löst. Eigentlich dürfte auch der uC keinen Schaden nehmen, schließlich wird er ja auch sonst immer einfach abgewirkt, oder man endet halt mit End. Die CC1 war da aber immer etwas schwiereiger, von wegen abschaltknopf etc.

MFG Moritz

Andree-HB
21.01.2005, 16:09
...dann startet der MC aber jedesmal von Grund auf durch und eventuelle Variablen im Ram gehen verloren. Ausserdem weiss ich nicht, wie sich ein eventuelles Tastprellen auswirkt. Auf jeden Fall würde ich durch einen Elko noch ein bisschen die Spannung "halten", damit das Programm definiert beendet wird.

tobimc
21.01.2005, 16:10
HI

Das könnte man ja mit einem GoldCap lösen, der dann den µC
versorgt, solange der abschaltet...
Oder einfach den µC mit nem NE555 soundsolange einschalten.

Ganz liebe Grüße, Tobi