Probleme mit Sleep Mode

Gast
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
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
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
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 schreiben

Eine eigene Frage? Dieser Thread ist über 22 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.