[STM32] RTC Interrupts Funktionieren nicht

Gast #2368163
Lesenswert?

Hallo,
ich versuch mich gerade an der RTC vom STM32.
Wenn man mal von den Interrupts absieht, funktioniert auch alles wie es 
soll,
bloß egal was ich mache es wird einfach kein Interrupt ausgelöst.

So sieht meine Initialisierung aus:
1
RCC_APB1ENR |= (1<<RCC_APB1ENR_BKPEN) | (1<<RCC_APB1ENR_PWREN);
2

3
PWR_CR |= (1<<PWR_CR_DBP);
4

5
RCC_BDCR |= (1<<RCC_BDCR_LSEON);  
6
while(!(RCC_BDCR & (1<<RCC_BDCR_LSERDY)));
7

8
RCC_BDCR |= (1<<RCC_BDCR_RTCSEL0);
9
RCC_BDCR |= (1<<RCC_BDCR_RTCEN);
10

11
while(!(RTC_CRL & (1<<RTC_CRL_RTOFF)));
12

13
RTC_CRL |= (1<<RTC_CRL_CNF);
14
  
15
RTC_PRLH = 0x0000;
16
RTC_PRLL = 0x7FFF;
17
  
18
RTC_CNTH = 0;
19
RTC_CNTL = 0;
20
  
21
RTC_CRH |= (1<<RTC_CRH_SECIE);
22
    
23
RTC_CRL &= ~(1<<RTC_CRL_CNF);
24
while(!(RTC_CRL & (1<<RTC_CRL_RTOFF)));

und die ISR:
1
if(RTC_CRL & (1<<RTC_CRL_ALRF))
2
{
3
  RTC_CRL &= ~(1<<RTC_CRL_SECF);
4
    
5
  if(GPIOB_ODR & GPIO_PIN(5))
6
    GPIOB_BRR |= GPIO_PIN(5);
7
  else
8
    GPIOB_BSRR |= GPIO_PIN(5);
9
      
10
  while(!(RTC_CRL & (1<<RTC_CRL_RSF)));
11
}

Kann mir bitte jemand sagen, was ich Falsch mache?
Gast #2368188
Lesenswert?

>Wird der Interrupt-Controller auch irgendwo gestreichelt?
ähm nein... Ich hab im Reference Manual keinen Hinweis darauf gefunden, 
das ich noch was im Interrupt Controller einstellen muss.
Warscheinlich unter Interrupts and Events?
Da lese ich nur was von externen Interrupts.

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