1 /* USER CODE BEGIN Header */ 2 /** 3 ****************************************************************************** 4 * @file stm32f4xx_it.c 5 * @brief Interrupt Service Routines. 6 ****************************************************************************** 7 * @attention 8 * 9 * <h2><center>© Copyright (c) 2019 STMicroelectronics. 10 * All rights reserved.</center></h2> 11 * 12 * This software component is licensed by ST under BSD 3-Clause license, 13 * the "License"; You may not use this file except in compliance with the 14 * License. You may obtain a copy of the License at: 15 * opensource.org/licenses/BSD-3-Clause 16 * 17 ****************************************************************************** 18 */ 19 /* USER CODE END Header */ 20 21 /* Includes ------------------------------------------------------------------*/ 22 #include "main.h" 23 #include "stm32f4xx_it.h" 24 /* Private includes ----------------------------------------------------------*/ 25 /* USER CODE BEGIN Includes */ 26 /* USER CODE END Includes */ 27 28 /* Private typedef -----------------------------------------------------------*/ 29 /* USER CODE BEGIN TD */ 30 31 /* USER CODE END TD */ 32 33 /* Private define ------------------------------------------------------------*/ 34 /* USER CODE BEGIN PD */ 35 36 /* USER CODE END PD */ 37 38 /* Private macro -------------------------------------------------------------*/ 39 /* USER CODE BEGIN PM */ 40 41 /* USER CODE END PM */ 42 43 /* Private variables ---------------------------------------------------------*/ 44 /* USER CODE BEGIN PV */ 45 46 /* USER CODE END PV */ 47 48 /* Private function prototypes -----------------------------------------------*/ 49 /* USER CODE BEGIN PFP */ 50 51 /* USER CODE END PFP */ 52 53 /* Private user code ---------------------------------------------------------*/ 54 /* USER CODE BEGIN 0 */ 55 56 /* USER CODE END 0 */ 57 58 /* External variables --------------------------------------------------------*/ 59 extern DMA_HandleTypeDef hdma_usart3_rx; 60 extern DMA_HandleTypeDef hdma_usart3_tx; 61 extern UART_HandleTypeDef huart2; 62 extern UART_HandleTypeDef huart3; 63 /* USER CODE BEGIN EV */ 64 65 /* USER CODE END EV */ 66 67 /******************************************************************************/ 68 /* Cortex-M4 Processor Interruption and Exception Handlers */ 69 /******************************************************************************/ 70 /** 71 * @brief This function handles System service call via SWI instruction. 72 */ 73 void SVC_Handler(void) 74 { 75 /* USER CODE BEGIN SVCall_IRQn 0 */ 76 77 /* USER CODE END SVCall_IRQn 0 */ 78 /* USER CODE BEGIN SVCall_IRQn 1 */ 79 80 /* USER CODE END SVCall_IRQn 1 */ 81 } 82 83 /** 84 * @brief This function handles Pendable request for system service. 85 */ 86 void PendSV_Handler(void) 87 { 88 /* USER CODE BEGIN PendSV_IRQn 0 */ 89 90 /* USER CODE END PendSV_IRQn 0 */ 91 /* USER CODE BEGIN PendSV_IRQn 1 */ 92 93 /* USER CODE END PendSV_IRQn 1 */ 94 } 95 96 /** 97 * @brief This function handles System tick timer. 98 */ 99 void SysTick_Handler(void) 100 { 101 /* USER CODE BEGIN SysTick_IRQn 0 */ 102 103 /* USER CODE END SysTick_IRQn 0 */ 104 HAL_IncTick(); 105 /* USER CODE BEGIN SysTick_IRQn 1 */ 106 107 /* USER CODE END SysTick_IRQn 1 */ 108 } 109 110 /******************************************************************************/ 111 /* STM32F4xx Peripheral Interrupt Handlers */ 112 /* Add here the Interrupt Handlers for the used peripherals. */ 113 /* For the available peripheral interrupt handler names, */ 114 /* please refer to the startup file (startup_stm32f4xx.s). */ 115 /******************************************************************************/ 116 117 /** 118 * @brief This function handles DMA1 stream1 global interrupt. 119 */ 120 void DMA1_Stream1_IRQHandler(void) 121 { 122 /* USER CODE BEGIN DMA1_Stream1_IRQn 0 */ 123 124 /* USER CODE END DMA1_Stream1_IRQn 0 */ 125 HAL_DMA_IRQHandler(&hdma_usart3_rx); 126 /* USER CODE BEGIN DMA1_Stream1_IRQn 1 */ 127 128 /* USER CODE END DMA1_Stream1_IRQn 1 */ 129 } 130 131 /** 132 * @brief This function handles DMA1 stream4 global interrupt. 133 */ 134 void DMA1_Stream4_IRQHandler(void) 135 { 136 /* USER CODE BEGIN DMA1_Stream4_IRQn 0 */ 137 138 /* USER CODE END DMA1_Stream4_IRQn 0 */ 139 HAL_DMA_IRQHandler(&hdma_usart3_tx); 140 /* USER CODE BEGIN DMA1_Stream4_IRQn 1 */ 141 142 /* USER CODE END DMA1_Stream4_IRQn 1 */ 143 } 144 145 /** 146 * @brief This function handles USART2 global interrupt. 147 */ 148 void USART2_IRQHandler(void) 149 { 150 /* USER CODE BEGIN USART2_IRQn 0 */ 151 152 /* USER CODE END USART2_IRQn 0 */ 153 HAL_UART_IRQHandler(&huart2); 154 /* USER CODE BEGIN USART2_IRQn 1 */ 155 156 /* USER CODE END USART2_IRQn 1 */ 157 } 158 159 /** 160 * @brief This function handles USART3 global interrupt. 161 */ 162 void USART3_IRQHandler(void) 163 { 164 /* USER CODE BEGIN USART3_IRQn 0 */ 165 166 /* USER CODE END USART3_IRQn 0 */ 167 HAL_UART_IRQHandler(&huart3); 168 /* USER CODE BEGIN USART3_IRQn 1 */ 169 170 /* USER CODE END USART3_IRQn 1 */ 171 } 172 173 /* USER CODE BEGIN 1 */ 174 175 /* USER CODE END 1 */ 176 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ 177