Gast
#69221
Hallo! Ich will den AVR90S8535 nach bedarf zum schlafen bringen, so dass er weniger Strom Verbraucht. Kann mir jemand in C ein Beispiel geben wo ich das mal anschauen kann??? Bye
|
Anzeige
|
Probleme mit Sleep Mode
Gast
#69221
Hallo! Ich will den AVR90S8535 nach bedarf zum schlafen bringen, so dass er weniger Strom Verbraucht. Kann mir jemand in C ein Beispiel geben wo ich das mal anschauen kann??? Bye
Gast
#69222
Gibt es hier niemand im Forum der mir dabei helfen kann??? Für die Unterstützung wäre ich sehr dankbar.
Gast
#69223
Hallo, ich kann kein C, aber versuch es einfach mal mit sleep. Bye
Gast
#69224
Was meinst du mit Sleep! hmmm.... Ich verwende den CodevisionAVR.
Gast
#69225
Hallo,
dann versuche mal:
#asm("sleep")
Bye
Gast
#69226
So wenn ich dies jetzt im Programm so ausführe, wie bekomme ich den AVR wieder zum erwecken????
Gast
#69227
Diesen Befehl sollte man anwenden, wenn der Processor grade nix
zu tun hat, also in einer Schleife auf etwas wartet.
Das könnte z.B. ein interrupt sein vom Timer, I/O Port,
UART, AD-Wandler usw.
Bei dem Befehl fehlte glaube ich noch etwas.
MCUCR = 0x38; //entering sleeping mode: power save mode
#asm("sleep")
So sollte es gehen.
Aber ich hab kein Ahnung von C.
Gast
#69228
ist es wirklich so schwierig google, die Suche oder das Datenblatt zu verwenden ?? AT90S8535, Seite 30: To enter any of the three sleep modes, the SE bit in MCUCR must be set and a SLEEP instruction must be executed. SM1 und SM0 im MCUCR bestimmen den sleep-Mode. Aufwecken kannst du den uP nur durch Interrupts. Idle Mode: uP reagiert auf alle Ints Power down Mode: uP reagiert nur auf externen Int. und Watchdog Power Save Mode: wie Power down, zusätzlich tmr2, falls extern geclocked. grüsse leo9
Gast
#69229
WINAVR: set_sleep_mode(SLEEP_MODE_IDLE);/* set sleep mode 0*/ sleep_mode();
Gast
#69230
Hallo leo9, ist schon klar, aber die Frage war, wie man das in C programmiert. Nun sag es AVRfreak mal wie es genau geht, bitte. Ich bekomme von C-Code immer Kopfschmerzen und Knoten im Hirn. :-) Es grüßt, Arno
Gast
#69231
Hallo Conlost, endlich mal ein Mitstreiter, mir gehts mit der c-Syntax genauso. Leider muß ich mich jetzt aber auch mit c auseinandersetzen, es scheinen einfach die effektivsten Compiler für AVRs zu sein. @AVRFreak: schau mal in die Hilfe von Codevision: #include <sleep.h> an der richtigen Stelle im Programm: sleep_enable(); idle(); // oder powerdown() oder powersave() //oder standby() oder extended_standby() die genauen Beschreibungen dieser fünf Befehle schreibe ich jetzt aber nicht aus dem Hilfefile ab ;-) grüsse leo9 Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|