tdse-tf_3-02

Controlador PID para derretidor de miel con control local via botones y remoto via WiFi
Index Commits Files Refs Submodules README
firmware-nucleo/Core/Src/stm32f1xx_it.c (8994B)
   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 extern DMA_HandleTypeDef hdma_i2c1_tx;
  59 extern I2C_HandleTypeDef hi2c1;
  60 extern DMA_HandleTypeDef hdma_usart1_tx;
  61 extern DMA_HandleTypeDef hdma_usart1_rx;
  62 extern DMA_HandleTypeDef hdma_usart3_rx;
  63 extern DMA_HandleTypeDef hdma_usart3_tx;
  64 extern UART_HandleTypeDef huart1;
  65 extern UART_HandleTypeDef huart3;
  66 /* USER CODE BEGIN EV */
  67 
  68 /* USER CODE END EV */
  69 
  70 /******************************************************************************/
  71 /*           Cortex-M3 Processor Interruption and Exception Handlers          */
  72 /******************************************************************************/
  73 /**
  74   * @brief This function handles Non maskable interrupt.
  75   */
  76 void NMI_Handler(void)
  77 {
  78   /* USER CODE BEGIN NonMaskableInt_IRQn 0 */
  79 
  80   /* USER CODE END NonMaskableInt_IRQn 0 */
  81   /* USER CODE BEGIN NonMaskableInt_IRQn 1 */
  82    while (1)
  83   {
  84   }
  85   /* USER CODE END NonMaskableInt_IRQn 1 */
  86 }
  87 
  88 /**
  89   * @brief This function handles Hard fault interrupt.
  90   */
  91 void HardFault_Handler(void)
  92 {
  93   /* USER CODE BEGIN HardFault_IRQn 0 */
  94 
  95   /* USER CODE END HardFault_IRQn 0 */
  96   while (1)
  97   {
  98     /* USER CODE BEGIN W1_HardFault_IRQn 0 */
  99     /* USER CODE END W1_HardFault_IRQn 0 */
 100   }
 101 }
 102 
 103 /**
 104   * @brief This function handles Memory management fault.
 105   */
 106 void MemManage_Handler(void)
 107 {
 108   /* USER CODE BEGIN MemoryManagement_IRQn 0 */
 109 
 110   /* USER CODE END MemoryManagement_IRQn 0 */
 111   while (1)
 112   {
 113     /* USER CODE BEGIN W1_MemoryManagement_IRQn 0 */
 114     /* USER CODE END W1_MemoryManagement_IRQn 0 */
 115   }
 116 }
 117 
 118 /**
 119   * @brief This function handles Prefetch fault, memory access fault.
 120   */
 121 void BusFault_Handler(void)
 122 {
 123   /* USER CODE BEGIN BusFault_IRQn 0 */
 124 
 125   /* USER CODE END BusFault_IRQn 0 */
 126   while (1)
 127   {
 128     /* USER CODE BEGIN W1_BusFault_IRQn 0 */
 129     /* USER CODE END W1_BusFault_IRQn 0 */
 130   }
 131 }
 132 
 133 /**
 134   * @brief This function handles Undefined instruction or illegal state.
 135   */
 136 void UsageFault_Handler(void)
 137 {
 138   /* USER CODE BEGIN UsageFault_IRQn 0 */
 139 
 140   /* USER CODE END UsageFault_IRQn 0 */
 141   while (1)
 142   {
 143     /* USER CODE BEGIN W1_UsageFault_IRQn 0 */
 144     /* USER CODE END W1_UsageFault_IRQn 0 */
 145   }
 146 }
 147 
 148 /**
 149   * @brief This function handles System service call via SWI instruction.
 150   */
 151 void SVC_Handler(void)
 152 {
 153   /* USER CODE BEGIN SVCall_IRQn 0 */
 154 
 155   /* USER CODE END SVCall_IRQn 0 */
 156   /* USER CODE BEGIN SVCall_IRQn 1 */
 157 
 158   /* USER CODE END SVCall_IRQn 1 */
 159 }
 160 
 161 /**
 162   * @brief This function handles Debug monitor.
 163   */
 164 void DebugMon_Handler(void)
 165 {
 166   /* USER CODE BEGIN DebugMonitor_IRQn 0 */
 167 
 168   /* USER CODE END DebugMonitor_IRQn 0 */
 169   /* USER CODE BEGIN DebugMonitor_IRQn 1 */
 170 
 171   /* USER CODE END DebugMonitor_IRQn 1 */
 172 }
 173 
 174 /**
 175   * @brief This function handles Pendable request for system service.
 176   */
 177 void PendSV_Handler(void)
 178 {
 179   /* USER CODE BEGIN PendSV_IRQn 0 */
 180 
 181   /* USER CODE END PendSV_IRQn 0 */
 182   /* USER CODE BEGIN PendSV_IRQn 1 */
 183 
 184   /* USER CODE END PendSV_IRQn 1 */
 185 }
 186 
 187 /**
 188   * @brief This function handles System tick timer.
 189   */
 190 void SysTick_Handler(void)
 191 {
 192   /* USER CODE BEGIN SysTick_IRQn 0 */
 193 
 194   /* USER CODE END SysTick_IRQn 0 */
 195   HAL_IncTick();
 196   /* USER CODE BEGIN SysTick_IRQn 1 */
 197 
 198       HAL_SYSTICK_IRQHandler();
 199 
 200   /* USER CODE END SysTick_IRQn 1 */
 201 }
 202 
 203 /******************************************************************************/
 204 /* STM32F1xx Peripheral Interrupt Handlers                                    */
 205 /* Add here the Interrupt Handlers for the used peripherals.                  */
 206 /* For the available peripheral interrupt handler names,                      */
 207 /* please refer to the startup file (startup_stm32f1xx.s).                    */
 208 /******************************************************************************/
 209 
 210 /**
 211   * @brief This function handles DMA1 channel2 global interrupt.
 212   */
 213 void DMA1_Channel2_IRQHandler(void)
 214 {
 215   /* USER CODE BEGIN DMA1_Channel2_IRQn 0 */
 216 
 217   /* USER CODE END DMA1_Channel2_IRQn 0 */
 218   HAL_DMA_IRQHandler(&hdma_usart3_tx);
 219   /* USER CODE BEGIN DMA1_Channel2_IRQn 1 */
 220 
 221   /* USER CODE END DMA1_Channel2_IRQn 1 */
 222 }
 223 
 224 /**
 225   * @brief This function handles DMA1 channel3 global interrupt.
 226   */
 227 void DMA1_Channel3_IRQHandler(void)
 228 {
 229   /* USER CODE BEGIN DMA1_Channel3_IRQn 0 */
 230 
 231   /* USER CODE END DMA1_Channel3_IRQn 0 */
 232   HAL_DMA_IRQHandler(&hdma_usart3_rx);
 233   /* USER CODE BEGIN DMA1_Channel3_IRQn 1 */
 234 
 235   /* USER CODE END DMA1_Channel3_IRQn 1 */
 236 }
 237 
 238 /**
 239   * @brief This function handles DMA1 channel4 global interrupt.
 240   */
 241 void DMA1_Channel4_IRQHandler(void)
 242 {
 243   /* USER CODE BEGIN DMA1_Channel4_IRQn 0 */
 244 
 245   /* USER CODE END DMA1_Channel4_IRQn 0 */
 246   HAL_DMA_IRQHandler(&hdma_usart1_tx);
 247   /* USER CODE BEGIN DMA1_Channel4_IRQn 1 */
 248 
 249   /* USER CODE END DMA1_Channel4_IRQn 1 */
 250 }
 251 
 252 /**
 253   * @brief This function handles DMA1 channel5 global interrupt.
 254   */
 255 void DMA1_Channel5_IRQHandler(void)
 256 {
 257   /* USER CODE BEGIN DMA1_Channel5_IRQn 0 */
 258 
 259   /* USER CODE END DMA1_Channel5_IRQn 0 */
 260   HAL_DMA_IRQHandler(&hdma_usart1_rx);
 261   /* USER CODE BEGIN DMA1_Channel5_IRQn 1 */
 262 
 263   /* USER CODE END DMA1_Channel5_IRQn 1 */
 264 }
 265 
 266 /**
 267   * @brief This function handles DMA1 channel6 global interrupt.
 268   */
 269 void DMA1_Channel6_IRQHandler(void)
 270 {
 271   /* USER CODE BEGIN DMA1_Channel6_IRQn 0 */
 272 
 273   /* USER CODE END DMA1_Channel6_IRQn 0 */
 274   HAL_DMA_IRQHandler(&hdma_i2c1_tx);
 275   /* USER CODE BEGIN DMA1_Channel6_IRQn 1 */
 276 
 277   /* USER CODE END DMA1_Channel6_IRQn 1 */
 278 }
 279 
 280 /**
 281   * @brief This function handles I2C1 event interrupt.
 282   */
 283 void I2C1_EV_IRQHandler(void)
 284 {
 285   /* USER CODE BEGIN I2C1_EV_IRQn 0 */
 286 
 287   /* USER CODE END I2C1_EV_IRQn 0 */
 288   HAL_I2C_EV_IRQHandler(&hi2c1);
 289   /* USER CODE BEGIN I2C1_EV_IRQn 1 */
 290 
 291   /* USER CODE END I2C1_EV_IRQn 1 */
 292 }
 293 
 294 /**
 295   * @brief This function handles I2C1 error interrupt.
 296   */
 297 void I2C1_ER_IRQHandler(void)
 298 {
 299   /* USER CODE BEGIN I2C1_ER_IRQn 0 */
 300 
 301   /* USER CODE END I2C1_ER_IRQn 0 */
 302   HAL_I2C_ER_IRQHandler(&hi2c1);
 303   /* USER CODE BEGIN I2C1_ER_IRQn 1 */
 304 
 305   /* USER CODE END I2C1_ER_IRQn 1 */
 306 }
 307 
 308 /**
 309   * @brief This function handles USART1 global interrupt.
 310   */
 311 void USART1_IRQHandler(void)
 312 {
 313   /* USER CODE BEGIN USART1_IRQn 0 */
 314 
 315   /* USER CODE END USART1_IRQn 0 */
 316   HAL_UART_IRQHandler(&huart1);
 317   /* USER CODE BEGIN USART1_IRQn 1 */
 318 
 319   /* USER CODE END USART1_IRQn 1 */
 320 }
 321 
 322 /**
 323   * @brief This function handles USART3 global interrupt.
 324   */
 325 void USART3_IRQHandler(void)
 326 {
 327   /* USER CODE BEGIN USART3_IRQn 0 */
 328 
 329   /* USER CODE END USART3_IRQn 0 */
 330   HAL_UART_IRQHandler(&huart3);
 331   /* USER CODE BEGIN USART3_IRQn 1 */
 332 
 333   /* USER CODE END USART3_IRQn 1 */
 334 }
 335 
 336 /**
 337   * @brief This function handles EXTI line[15:10] interrupts.
 338   */
 339 void EXTI15_10_IRQHandler(void)
 340 {
 341   /* USER CODE BEGIN EXTI15_10_IRQn 0 */
 342 
 343   /* USER CODE END EXTI15_10_IRQn 0 */
 344   HAL_GPIO_EXTI_IRQHandler(BTN_A_Pin);
 345   /* USER CODE BEGIN EXTI15_10_IRQn 1 */
 346 
 347   /* USER CODE END EXTI15_10_IRQn 1 */
 348 }
 349 
 350 /* USER CODE BEGIN 1 */
 351 
 352 /* USER CODE END 1 */