stm32wbxx_it.c 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. #include "main.h"
  2. #include "stm32wbxx_it.h"
  3. #include "FreeRTOS.h"
  4. #include "task.h"
  5. extern PCD_HandleTypeDef hpcd_USB_FS;
  6. extern ADC_HandleTypeDef hadc1;
  7. extern COMP_HandleTypeDef hcomp1;
  8. extern RTC_HandleTypeDef hrtc;
  9. extern TIM_HandleTypeDef htim1;
  10. extern TIM_HandleTypeDef htim2;
  11. extern TIM_HandleTypeDef htim16;
  12. extern TIM_HandleTypeDef htim17;
  13. extern void HW_TS_RTC_Wakeup_Handler();
  14. extern void HW_IPCC_Tx_Handler();
  15. extern void HW_IPCC_Rx_Handler();
  16. void NMI_Handler(void) {
  17. HAL_RCC_NMI_IRQHandler();
  18. }
  19. void HardFault_Handler(void) {
  20. if ((*(volatile uint32_t *)CoreDebug_BASE) & (1 << 0)) {
  21. __asm("bkpt 1");
  22. }
  23. while (1) {}
  24. }
  25. void MemManage_Handler(void) {
  26. __asm("bkpt 1");
  27. while (1) {}
  28. }
  29. void BusFault_Handler(void) {
  30. __asm("bkpt 1");
  31. while (1) {}
  32. }
  33. void UsageFault_Handler(void) {
  34. __asm("bkpt 1");
  35. while (1) {}
  36. }
  37. void DebugMon_Handler(void) {
  38. }
  39. void SysTick_Handler(void) {
  40. HAL_IncTick();
  41. }
  42. void TAMP_STAMP_LSECSS_IRQHandler(void) {
  43. if (!LL_RCC_LSE_IsReady()) {
  44. // TODO: notify user about issue with LSE
  45. LL_RCC_ForceBackupDomainReset();
  46. LL_RCC_ReleaseBackupDomainReset();
  47. NVIC_SystemReset();
  48. }
  49. }
  50. void RCC_IRQHandler(void) {
  51. }
  52. void ADC1_IRQHandler(void) {
  53. HAL_ADC_IRQHandler(&hadc1);
  54. }
  55. void USB_LP_IRQHandler(void) {
  56. HAL_PCD_IRQHandler(&hpcd_USB_FS);
  57. }
  58. void COMP_IRQHandler(void) {
  59. HAL_COMP_IRQHandler(&hcomp1);
  60. }
  61. void TIM1_UP_TIM16_IRQHandler(void) {
  62. HAL_TIM_IRQHandler(&htim1);
  63. HAL_TIM_IRQHandler(&htim16);
  64. }
  65. void TIM1_TRG_COM_TIM17_IRQHandler(void) {
  66. HAL_TIM_IRQHandler(&htim1);
  67. }
  68. void TIM1_CC_IRQHandler(void) {
  69. HAL_TIM_IRQHandler(&htim1);
  70. }
  71. void HSEM_IRQHandler(void) {
  72. HAL_HSEM_IRQHandler();
  73. }
  74. void RTC_WKUP_IRQHandler(void){
  75. HW_TS_RTC_Wakeup_Handler();
  76. }
  77. void IPCC_C1_TX_IRQHandler(void){
  78. HW_IPCC_Tx_Handler();
  79. }
  80. void IPCC_C1_RX_IRQHandler(void){
  81. HW_IPCC_Rx_Handler();
  82. }