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 } 78 /* USER CODE END NonMaskableInt_IRQn 1 */ 79 } 80 81 /** 82 * @brief This function handles Hard fault interrupt. 83 */ 84 void HardFault_Handler(void) 85 { 86 /* USER CODE BEGIN HardFault_IRQn 0 */ 87 88 /* USER CODE END HardFault_IRQn 0 */ 89 while (1) 90 { 91 /* USER CODE BEGIN W1_HardFault_IRQn 0 */ 92 /* USER CODE END W1_HardFault_IRQn 0 */ 93 } 94 } 95 96 /** 97 * @brief This function handles Memory management fault. 98 */ 99 void MemManage_Handler(void) 100 { 101 /* USER CODE BEGIN MemoryManagement_IRQn 0 */ 102 103 /* USER CODE END MemoryManagement_IRQn 0 */ 104 while (1) 105 { 106 /* USER CODE BEGIN W1_MemoryManagement_IRQn 0 */ 107 /* USER CODE END W1_MemoryManagement_IRQn 0 */ 108 } 109 } 110 111 /** 112 * @brief This function handles Prefetch fault, memory access fault. 113 */ 114 void BusFault_Handler(void) 115 { 116 /* USER CODE BEGIN BusFault_IRQn 0 */ 117 118 /* USER CODE END BusFault_IRQn 0 */ 119 while (1) 120 { 121 /* USER CODE BEGIN W1_BusFault_IRQn 0 */ 122 /* USER CODE END W1_BusFault_IRQn 0 */ 123 } 124 } 125 126 /** 127 * @brief This function handles Undefined instruction or illegal state. 128 */ 129 void UsageFault_Handler(void) 130 { 131 /* USER CODE BEGIN UsageFault_IRQn 0 */ 132 133 /* USER CODE END UsageFault_IRQn 0 */ 134 while (1) 135 { 136 /* USER CODE BEGIN W1_UsageFault_IRQn 0 */ 137 /* USER CODE END W1_UsageFault_IRQn 0 */ 138 } 139 } 140 141 /** 142 * @brief This function handles System service call via SWI instruction. 143 */ 144 void SVC_Handler(void) 145 { 146 /* USER CODE BEGIN SVCall_IRQn 0 */ 147 148 /* USER CODE END SVCall_IRQn 0 */ 149 /* USER CODE BEGIN SVCall_IRQn 1 */ 150 151 /* USER CODE END SVCall_IRQn 1 */ 152 } 153 154 /** 155 * @brief This function handles Debug monitor. 156 */ 157 void DebugMon_Handler(void) 158 { 159 /* USER CODE BEGIN DebugMonitor_IRQn 0 */ 160 161 /* USER CODE END DebugMonitor_IRQn 0 */ 162 /* USER CODE BEGIN DebugMonitor_IRQn 1 */ 163 164 /* USER CODE END DebugMonitor_IRQn 1 */ 165 } 166 167 /** 168 * @brief This function handles Pendable request for system service. 169 */ 170 void PendSV_Handler(void) 171 { 172 /* USER CODE BEGIN PendSV_IRQn 0 */ 173 174 /* USER CODE END PendSV_IRQn 0 */ 175 /* USER CODE BEGIN PendSV_IRQn 1 */ 176 177 /* USER CODE END PendSV_IRQn 1 */ 178 } 179 180 /** 181 * @brief This function handles System tick timer. 182 */ 183 void SysTick_Handler(void) 184 { 185 /* USER CODE BEGIN SysTick_IRQn 0 */ 186 187 /* USER CODE END SysTick_IRQn 0 */ 188 HAL_IncTick(); 189 /* USER CODE BEGIN SysTick_IRQn 1 */ 190 191 /* USER CODE END SysTick_IRQn 1 */ 192 } 193 194 /******************************************************************************/ 195 /* STM32F1xx Peripheral Interrupt Handlers */ 196 /* Add here the Interrupt Handlers for the used peripherals. */ 197 /* For the available peripheral interrupt handler names, */ 198 /* please refer to the startup file (startup_stm32f1xx.s). */ 199 /******************************************************************************/ 200 201 /** 202 * @brief This function handles EXTI line[15:10] interrupts. 203 */ 204 void EXTI15_10_IRQHandler(void) 205 { 206 /* USER CODE BEGIN EXTI15_10_IRQn 0 */ 207 208 /* USER CODE END EXTI15_10_IRQn 0 */ 209 HAL_GPIO_EXTI_IRQHandler(B1_Pin); 210 /* USER CODE BEGIN EXTI15_10_IRQn 1 */ 211 212 /* USER CODE END EXTI15_10_IRQn 1 */ 213 } 214 215 /* USER CODE BEGIN 1 */ 216 217 /* USER CODE END 1 */
