1 /* USER CODE BEGIN Header */ 2 /** 3 ****************************************************************************** 4 * @file stm32f1xx_it.c 5 * @brief Interrupt Service Routines. 6 ****************************************************************************** 7 * @attention 8 * 9 * Copyright (c) 2025 STMicroelectronics. 10 * All rights reserved. 11 * 12 * This software is licensed under terms that can be found in the LICENSE file 13 * in the root directory of this software component. 14 * If no LICENSE file comes with this software, it is provided AS-IS. 15 * 16 ****************************************************************************** 17 */ 18 /* USER CODE END Header */ 19 20 /* Includes ------------------------------------------------------------------*/ 21 #include "main.h" 22 #include "stm32f1xx_it.h" 23 /* Private includes ----------------------------------------------------------*/ 24 /* USER CODE BEGIN Includes */ 25 /* USER CODE END Includes */ 26 27 /* Private typedef -----------------------------------------------------------*/ 28 /* USER CODE BEGIN TD */ 29 30 /* USER CODE END TD */ 31 32 /* Private define ------------------------------------------------------------*/ 33 /* USER CODE BEGIN PD */ 34 35 /* USER CODE END PD */ 36 37 /* Private macro -------------------------------------------------------------*/ 38 /* USER CODE BEGIN PM */ 39 40 /* USER CODE END PM */ 41 42 /* Private variables ---------------------------------------------------------*/ 43 /* USER CODE BEGIN PV */ 44 45 /* USER CODE END PV */ 46 47 /* Private function prototypes -----------------------------------------------*/ 48 /* USER CODE BEGIN PFP */ 49 50 /* USER CODE END PFP */ 51 52 /* Private user code ---------------------------------------------------------*/ 53 /* USER CODE BEGIN 0 */ 54 55 /* USER CODE END 0 */ 56 57 /* External variables --------------------------------------------------------*/ 58 59 /* USER CODE BEGIN EV */ 60 61 /* USER CODE END EV */ 62 63 /******************************************************************************/ 64 /* Cortex-M3 Processor Interruption and Exception Handlers */ 65 /******************************************************************************/ 66 /** 67 * @brief This function handles Non maskable interrupt. 68 */ 69 void NMI_Handler(void) 70 { 71 /* USER CODE BEGIN NonMaskableInt_IRQn 0 */ 72 73 /* USER CODE END NonMaskableInt_IRQn 0 */ 74 /* USER CODE BEGIN NonMaskableInt_IRQn 1 */ 75 while (1) { 76 } 77 /* USER CODE END NonMaskableInt_IRQn 1 */ 78 } 79 80 /** 81 * @brief This function handles Hard fault interrupt. 82 */ 83 void HardFault_Handler(void) 84 { 85 /* USER CODE BEGIN HardFault_IRQn 0 */ 86 87 /* USER CODE END HardFault_IRQn 0 */ 88 while (1) { 89 /* USER CODE BEGIN W1_HardFault_IRQn 0 */ 90 /* USER CODE END W1_HardFault_IRQn 0 */ 91 } 92 } 93 94 /** 95 * @brief This function handles Memory management fault. 96 */ 97 void MemManage_Handler(void) 98 { 99 /* USER CODE BEGIN MemoryManagement_IRQn 0 */ 100 101 /* USER CODE END MemoryManagement_IRQn 0 */ 102 while (1) { 103 /* USER CODE BEGIN W1_MemoryManagement_IRQn 0 */ 104 /* USER CODE END W1_MemoryManagement_IRQn 0 */ 105 } 106 } 107 108 /** 109 * @brief This function handles Prefetch fault, memory access fault. 110 */ 111 void BusFault_Handler(void) 112 { 113 /* USER CODE BEGIN BusFault_IRQn 0 */ 114 115 /* USER CODE END BusFault_IRQn 0 */ 116 while (1) { 117 /* USER CODE BEGIN W1_BusFault_IRQn 0 */ 118 /* USER CODE END W1_BusFault_IRQn 0 */ 119 } 120 } 121 122 /** 123 * @brief This function handles Undefined instruction or illegal state. 124 */ 125 void UsageFault_Handler(void) 126 { 127 /* USER CODE BEGIN UsageFault_IRQn 0 */ 128 129 /* USER CODE END UsageFault_IRQn 0 */ 130 while (1) { 131 /* USER CODE BEGIN W1_UsageFault_IRQn 0 */ 132 /* USER CODE END W1_UsageFault_IRQn 0 */ 133 } 134 } 135 136 /** 137 * @brief This function handles System service call via SWI instruction. 138 */ 139 void SVC_Handler(void) 140 { 141 /* USER CODE BEGIN SVCall_IRQn 0 */ 142 143 /* USER CODE END SVCall_IRQn 0 */ 144 /* USER CODE BEGIN SVCall_IRQn 1 */ 145 146 /* USER CODE END SVCall_IRQn 1 */ 147 } 148 149 /** 150 * @brief This function handles Debug monitor. 151 */ 152 void DebugMon_Handler(void) 153 { 154 /* USER CODE BEGIN DebugMonitor_IRQn 0 */ 155 156 /* USER CODE END DebugMonitor_IRQn 0 */ 157 /* USER CODE BEGIN DebugMonitor_IRQn 1 */ 158 159 /* USER CODE END DebugMonitor_IRQn 1 */ 160 } 161 162 /** 163 * @brief This function handles Pendable request for system service. 164 */ 165 void PendSV_Handler(void) 166 { 167 /* USER CODE BEGIN PendSV_IRQn 0 */ 168 169 /* USER CODE END PendSV_IRQn 0 */ 170 /* USER CODE BEGIN PendSV_IRQn 1 */ 171 172 /* USER CODE END PendSV_IRQn 1 */ 173 } 174 175 /** 176 * @brief This function handles System tick timer. 177 */ 178 void SysTick_Handler(void) 179 { 180 /* USER CODE BEGIN SysTick_IRQn 0 */ 181 182 /* USER CODE END SysTick_IRQn 0 */ 183 HAL_IncTick(); 184 /* USER CODE BEGIN SysTick_IRQn 1 */ 185 186 /* USER CODE END SysTick_IRQn 1 */ 187 } 188 189 /******************************************************************************/ 190 /* STM32F1xx Peripheral Interrupt Handlers */ 191 /* Add here the Interrupt Handlers for the used peripherals. */ 192 /* For the available peripheral interrupt handler names, */ 193 /* please refer to the startup file (startup_stm32f1xx.s). */ 194 /******************************************************************************/ 195 196 /** 197 * @brief This function handles EXTI line[15:10] interrupts. 198 */ 199 void EXTI15_10_IRQHandler(void) 200 { 201 /* USER CODE BEGIN EXTI15_10_IRQn 0 */ 202 203 /* USER CODE END EXTI15_10_IRQn 0 */ 204 HAL_GPIO_EXTI_IRQHandler(B1_Pin); 205 /* USER CODE BEGIN EXTI15_10_IRQn 1 */ 206 207 /* USER CODE END EXTI15_10_IRQn 1 */ 208 } 209 210 /* USER CODE BEGIN 1 */ 211 212 /* USER CODE END 1 */
