UC3 - Asynchronous Timer auf Framework

Gast #2329913
Lesenswert?

Hallo,

ich arbeite seit kurzem mit dem 32-bitter UC3 C1512 von Atmel.
Mein Problem im Moment ist, dass ich einen periodischen Interrupt haben 
will. Mein Code dafür (nach Einbindung des Frameworks) ist:
1
#include <avr32/io.h>
2
#include "gpio.h"
3
#include "intc.h"
4
#include "ast.h"
5

6
int main(void)
7
{
8
  Enable_global_interrupt();
9
  //AST-Clock ausschalten
10
  AVR32_AST.clock &= ~(1 << 0); 
11
  //Initialisierung als Counter  mit 32kHz ohne Prescaler
12
  ast_init_counter(&AVR32_AST,1,0,0);
13
  //enable Timer 
14
  ast_enable(&AVR32_AST);
15
  //Interrupts initialisieren 
16
  INTC_init_interrupts(); 
17
  //Interrupt Zuordnung für periodischen AST Interrupt
18
  INTC_register_interrupt(&ast_int_handler, AVR32_AST_PER_IRQ, AVR32_INTC_INT0); 
19

20
while (1)
21
{
22
}
23
return 0;
24
}

Das Problem ist, dass er im Befehl ast_init_counter in der 
Endlosschleife
while (ast_is_clkbusy(ast));
hängt. Ausgegeben wird, dass die Clock busy ist und somit geht es nicht 
weiter. Die Clock habe ich jedoch vorher deaktiviert.
Da der Ablauf schon oben hängt und der AST gar nicht aktiviert wird, 
kann ich natürlich auch nicht testen, ob der Rest korrekt ist.

Hat das jemand von euch schon am Laufen?

Danke und viele Grüße

Torben

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren