Configuré TIM3 para disparar una interrupción en mi proyecto y simplemente no funcionó. Intenté todo lo que pude y aún no pude encontrar cuál es el problema. Luego creé un proyecto limpio y copié / pegué solo el código que configura TIM3 e interrumpe y funcionó mágicamente. Literalmente, perdí la mitad de un día tratando de encontrar qué causa el problema y resulta que ... a las interrupciones no les gusta C ++.
Escribí mi código en C ++ porque necesitaba clases en mi proyecto, así que naturalmente cambié el nombre de todos mis archivos .cpp a .cpp y también compilé con la directiva --cpp. Todo funcionó bien, sin problemas hasta que decidí usar las interrupciones. Así que renombré todo a .c y todo funcionó, renombré todo a cpp y dejó de funcionar.
Utilizo Keil uVision5 y mis proyectos se generan con STM32CubeMX (solo configuración RCC).
¿Alguien les había pasado esto? ¿Alguna solución?