Forum: Mikrocontroller und Digitale Elektronik Controller schläft nur einmal ein


von Niels (Gast)


Lesenswert?

Hallo zusammen,

ich habe einen LPC2368 den ich gerne schlafen legen möchte.
Dies funktioniert mit dem unten stehenden Programmausschnitt genau 
einmal, d.h. der Prozessor schläft einmal ein und nachdem ich ihn über 
eine CAN Message aufgeweckt habe lässt er sich nicht mehr in den 
sleep-Modus versetzen.

void McuSleep(void)
{
  printf("SLEEP\n");

  INTWAKE = 0x40;    //Wakup on CAN Message

  /* Enter in reduced power mode */
  PCON = 0x9D; /* LPC into sleep mode */

  /* need to configure pll after wake up */
  ConfigPll(CLKSRCInt);
  UartInit(UARTPORT_CONSOLE, 115200);
}


Weiß jemand ob noch ein Register gesetzt werden muss, nachdem der 
Controller aufgeweckt worden ist?

VG
Niels

von Omega G. (omega) Benutzerseite


Lesenswert?

Evtl. musst du den Interrupt nach dem Aufwachen löschen. Ist beim 
LPC2103 und der RTC als Interruptquelle der Fall.

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.