SAM4S mit ASF: simple blinker loop mit ungewolltem reset

OP Persönliche Seite #4067883
Lesenswert?
• ▲
▼
Hallo, icharbeite mich gerade mühsam in das Atmel Software Framework ein 
und insbesondere in die Verwendung des ASF mit custom (eigenen) boards.

Immerhin habe ich alles jetzt soweit, dass zwei LEDs auf meinem custom 
board mit den IOPORT, SYSTEM CLOCK CONTROL und DELAY services 
abwechselnd jeweils mit 1Hz blinken. Hurra, hallo welt.

Mir fällt dabei nur auf, dass nach 9 durchläufen (dh mit dem start der 
zehnten) die routine zu resetten scheint, was man kurz daran erkennt, 
dass die letzte LED kurz unterbricht, wieder aufleuchtet und damit einen 
minimalen (optisch aber bemerkbaren) Zeitversatz erzeugt.
Der code allerdings ist recht simpel und gib keinen Anlass für so etwas 
wie eine for-loop mit n=9 bzw 10:
1
#include <asf.h>
2

3
int main (void)
4
{
5
  /* Insert system clock initialization code here (sysclk_init()). */
6
  sysclk_init();
7
  board_init();
8
  
9
  delay_init(sysclk_get_cpu_hz());
10
  
11
    ioport_set_pin_level(LED0_GPIO, false);
12
    ioport_set_pin_level(LED1_GPIO, false);
13
    
14
    while(1){
15
      ioport_toggle_pin_level(LED0_GPIO);
16
      delay_ms(500);
17
      ioport_toggle_pin_level(LED1_GPIO);
18
      delay_ms(500);
19
    }
20

21
}

Ich weiß, dass ohne den ganzen asf-header-wust evtl nur geringe aussagen 
möglich sind, vielleicht ist das aber ein generelles ding dass euch 
schon untergekommen ist - habt ihr Ahnungen wo ich nach der Ursache 
suchen kann? Mir wäre recht das am anfang zu beheben und nicht dann, 
wenn schon uart, spi etc implementiert ist und dann immer wieder 
irgendwann irgendwelche fehler auftreten, die ich mir nicht erklären 
kann.
Kann es irgendwie mit XTAL/Clock/initalisierung zu tun haben?

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.