ARM SAM3U Backup Mode

Gast #2013233
hi,

ich versuche zZ die verschiedenen Power Modis meines SAM3U4E zu nutzen.
Aktuell versuche ich in den Backup Mode zu kommen(und wieder zu 
verlassen).
Allerdings ist das Datenblatt zum Prozessor ziemlich waage was die Power 
Modis anbelangt.

Datasheet: http://www.atmel.com/dyn/resources/prod_documents/doc6430.pdf
Abschnitt: 5.5.1 Backup Mode

So schaut mein aktuelles minimal Programm dazu aus:
1
void WaitLoop(int loops)
2
{
3
  int i;
4
  for(i=0;i<loops;i++){}
5
};
6

7
int main (void) 
8
{
9
  unsigned int *SystemControlRegister = NULL;
10
  const int cloops=100000;
11
  unsigned int ledmask = 3;
12

13
  //stop watchdog
14
  WDT->WDT_MR = (1<<15);
15
  
16
  //System Control Register  
17
  SystemControlRegister = (unsigned int *)0xE000ED10;
18
  
19
  //set deep sleep bit
20
  *SystemControlRegister |= (0x1<<2);
21
  
22
  //enable wakeup events
23
  REG_SUPC_WUMR |= (0xF<<0);
24
  
25
  //wait for events
26
  __WFE();
27
  
28
  //Setup Pins PB0..PB1 for LEDs
29
    PIOB->PIO_PER    =  0x03;  //pio enable register            
30
    PIOB->PIO_OER    =  0x03;  //output enable register 
31
    PIOB->PIO_PUDR   =  0x03;  //pull up disable register
32
    PIOB->PIO_OWER   =  0x03;  //output write enable register
33
    PIOB->PIO_ABSR  &= ~0x03;  //ab select register
34
  
35
  while(1)
36
  {
37
    PIOB->PIO_CODR = ledmask;
38
    WaitLoop(cloops);
39
    PIOB->PIO_SODR = ledmask;
40
    WaitLoop(cloops);
41
  };
42

43
}

Der soll starten, sich schlafen legen und dann aufs FWUP - Pin reagieren 
und anfangen mit den LEDs zu blinken.

Was natürlich nicht funkioniert....

Kann mir wer helfen und sagen warum es nicht läuft?

Grüße Marc
Gast #2014216
hi,

der Code oben funkioniert doch richtig, der geht in den Backup Mode.
Was ich nicht bedacht habe, ist das der nach dem Aufwecken am Anfang(!) 
der Main wieder beginnt...d.h. er konnte nie blinken.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 15 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.