SAME53 - Kein MC0-Interrupt

Gast #7054393
Lesenswert?

Hallo,

ich "stehe total auf dem Schlauch".
Ich habe TCC3 in Normal Frequency Mode am laufen.
Der TCC3_1_Handler() wird vom OVF-INT korrekt aufgerufen.
Zusätzlich habe ich eine TCC3_1_Handler()-Routine,
die von einem CC0-Compare-Match ausgelöst werden soll.
Aber es wird im Debugger bei INTFLAGS nie das MC0-Flag aktiv angezeigt
und ein Breakpoint im Handler wird nie erreicht.
Hier mein Code:
hri_tcc_write_PER_reg(HELPER_EGGTIMER_TCC, divide-1);
hri_tcc_write_CC_reg(HELPER_EGGTIMER_TCC, 0, divide/2);
hri_tc_write_WAVE_reg(HELPER_EGGTIMER_TCC, TCC_WAVE_WAVEGEN_NPWM);
__NVIC_SetPriority(TCC3_0_IRQn, egg_priority); 
__NVIC_SetPriority(TCC3_1_IRQn, background_priority);  // 
BackgroundTasks-_irq_enable(TCC3_0_IRQn);  _irq_enable(TCC3_1_IRQn); 
hri_tcc_set_INTEN_MC0_bit(HELPER_EGGTIMER_TCC);
hri_tcc_set_CTRLA_ENABLE_bit(HELPER_EGGTIMER_TCC);
PS:
Auch wenn in INTEN, MC0 nicht enabled ist, wird das Flag nie gesetzt.
Aber in Status ist MC0 und MC1 gesetzt.

Was habe ich übersehen?
Gast #7054501
Lesenswert?

Problem selbst gelöst:
In CTRLA war - aus "unerfindlichen Gründen" CPTEN0 & CPTEN1 gesetzt! 
(AtmelStart?)
Nachdem ich die beiden auf 0 gesetzt habe, funktionierte es...
Asche auf mein Haupt.

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