msp430 Timerinterrupt unregelmäßig?

OP #1380589
Lesenswert?

initialisierung: (nach OSC Fault)
1
void init_timerA()
2
{
3
  TACCTL0 = CCIE;                             // TACCR0 interrupt enabled
4
    TACCR0 = 5000;                // 10ms bei 4MHz Quarz
5
  TACTL = TASSEL_1 + MC_2 + TAIE + ID_3 ;     // ACLK/8, contmode, interrupt
6
}

Interrupt :
1
// Timer A0 interrupt service routine
2
#pragma vector=TIMERA0_VECTOR
3
__interrupt void Timer_A (void)
4
{
5
  P4OUT ^= (1<<2);
6
  TACCR0 += 500000;                          // Periode/(8/XTAL)
7
}
der timer ist ausschließlich hierfür verwendet.

Msp430F2274  mit CCE kompiliert
Gast #1380721
Lesenswert?

Ich nutze zwar für meine Zwecke den Cont. Mode mit Interrupt und 
mehreren CCRs, aber rein spontan fällt mir nur ein: schau dir mal die 
OUTMODx-Settings des TACCTL0-Registers an. Stimmt dies für deinen Zweck?

Ich meine zu glauben, dass der Overflow eine separate ISR-Aktivierung 
hat, der sollte also bei die nicht ausgelöst werden.

gruss
gunb

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