Hm...die Bibliothek , die ES nutzt, scheint da etwas anders mit Interrupts umzugehen. TIM2_IRQHandler ist da nur ne stinknormale Funktion.

Hier ist mal der Code, den ich bisher gebastelt habe.
Code:
void TIM2_IRQHandler(void){
  printf("TIM2 Interrupt\n");
}

void configTakt(){
  RCC->CFGR |= RCC_CFGR_PPRE1_DIV16;        //Takt für APB1 auf 1MHz runterteilen
}

void configTimer2(){
  RCC->APB1ENR |= RCC_APB1ENR_TIM2EN;       //Takt für Tim2 freigeben
  TIM2->PSC = 10000;                        //Prescaler 10.000
  TIM2->CR1 |= TIM_CR1_CEN;                 //Timer aktivieren
}

void main(void){
  configTakt();
  configTimer2();
  configLed();
  configButton();
  printf("Einstellung fertig\n");

  while(1){
  }
}