Forum: Mikrocontroller und Digitale Elektronik AT91SAM7S64 TimerCounter Probleme


von Johannes (Gast)


Lesenswert?

Hallo,

ich habe folgendes Problem mit dem Timer Counter:
Ich möchte das bei perioden_dauer/4 und perioden_dauer/2 ein Interrupt 
ausgelöst wird. Dazu setze ich TC_RA auf perioden_dauer/4 und TC_RB auf 
perioden_dauer/2. Das Ergebnis ist, dass der Interrupt bei TC_RA 
ausgelöst wird, bei TC_RB aber nicht. Kann mir das jemand erklären?
1
AT91F_TC_Open(AT91C_BASE_TC2,(
2
  AT91C_TC_WAVE |
3
  AT91C_TC_WAVESEL_UP_AUTO |
4
  AT91C_TC_CLKS_TIMER_DIV1_CLOCK
5
  ),AT91C_ID_TC2);
6
7
    AT91C_BASE_TC2->TC_RC = perioden_dauer;
8
    AT91C_BASE_TC2->TC_RA = perioden_dauer/4;
9
    AT91C_BASE_TC2->TC_RB = perioden_dauer/2;
10
11
    //* Open Timer 2 interrupt
12
    AT91F_AIC_ConfigureIt ( AT91C_BASE_AIC, AT91C_ID_TC2, 
13
        TIMER2_INTERRUPT_LEVEL,AT91C_AIC_SRCTYPE_INT_HIGH_LEVEL,  
14
        timer2_c_irq_handler);
15
    AT91C_BASE_TC2->TC_IER = (AT91C_TC_CPAS | AT91C_TC_CPBS);  
16
    AT91F_AIC_EnableIt (AT91C_BASE_AIC, AT91C_ID_TC2);

Schönen Gruß,
Johannes

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.