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 Ultimate Liberty license
13 * SLA0044, the "License"; You may not use this file except in compliance with
14 * the License. You may obtain a copy of the License at:
15 * www.st.com/SLA0044
16 *
17 ******************************************************************************
18 */
19 /* USER CODE END Header */
20
21 /* Includes ------------------------------------------------------------------*/
22 #include "main.h"
23 #include "stm32f4xx_it.h"
24 #include "FreeRTOS.h"
25 #include "task.h"
26 /* Private includes ----------------------------------------------------------*/
27 /* USER CODE BEGIN Includes */
28 /* USER CODE END Includes */
29
30 /* Private typedef -----------------------------------------------------------*/
31 /* USER CODE BEGIN TD */
32
33 /* USER CODE END TD */
34
35 /* Private define ------------------------------------------------------------*/
36 /* USER CODE BEGIN PD */
37
38 /* USER CODE END PD */
39
40 /* Private macro -------------------------------------------------------------*/
41 /* USER CODE BEGIN PM */
42
43 /* USER CODE END PM */
44
45 /* Private variables ---------------------------------------------------------*/
46 /* USER CODE BEGIN PV */
47
48 /* USER CODE END PV */
49
50 /* Private function prototypes -----------------------------------------------*/
51 /* USER CODE BEGIN PFP */
52
53 /* USER CODE END PFP */
54
55 /* Private user code ---------------------------------------------------------*/
56 /* USER CODE BEGIN 0 */
57
58 /* USER CODE END 0 */
59
60 /* External variables --------------------------------------------------------*/
61 extern HCD_HandleTypeDef hhcd_USB_OTG_HS;
62 extern DMA2D_HandleTypeDef hdma2d;
63 extern LTDC_HandleTypeDef hltdc;
64 extern TIM_HandleTypeDef htim6;
65
66 /* USER CODE BEGIN EV */
67
68 /* USER CODE END EV */
69
70 /******************************************************************************/
71 /* Cortex-M4 Processor Interruption and Exception Handlers */
72 /******************************************************************************/
73 /**
74 * @brief This function handles Non maskable interrupt.
75 */
NMI_Handler(void)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
83 /* USER CODE END NonMaskableInt_IRQn 1 */
84 }
85
86 /**
87 * @brief This function handles Hard fault interrupt.
88 */
HardFault_Handler(void)89 void HardFault_Handler(void)
90 {
91 /* USER CODE BEGIN HardFault_IRQn 0 */
92
93 /* USER CODE END HardFault_IRQn 0 */
94 while (1)
95 {
96 /* USER CODE BEGIN W1_HardFault_IRQn 0 */
97 /* USER CODE END W1_HardFault_IRQn 0 */
98 }
99 }
100
101 /**
102 * @brief This function handles Memory management fault.
103 */
MemManage_Handler(void)104 void MemManage_Handler(void)
105 {
106 /* USER CODE BEGIN MemoryManagement_IRQn 0 */
107
108 /* USER CODE END MemoryManagement_IRQn 0 */
109 while (1)
110 {
111 /* USER CODE BEGIN W1_MemoryManagement_IRQn 0 */
112 /* USER CODE END W1_MemoryManagement_IRQn 0 */
113 }
114 }
115
116 /**
117 * @brief This function handles Pre-fetch fault, memory access fault.
118 */
BusFault_Handler(void)119 void BusFault_Handler(void)
120 {
121 /* USER CODE BEGIN BusFault_IRQn 0 */
122
123 /* USER CODE END BusFault_IRQn 0 */
124 while (1)
125 {
126 /* USER CODE BEGIN W1_BusFault_IRQn 0 */
127 /* USER CODE END W1_BusFault_IRQn 0 */
128 }
129 }
130
131 /**
132 * @brief This function handles Undefined instruction or illegal state.
133 */
UsageFault_Handler(void)134 void UsageFault_Handler(void)
135 {
136 /* USER CODE BEGIN UsageFault_IRQn 0 */
137
138 /* USER CODE END UsageFault_IRQn 0 */
139 while (1)
140 {
141 /* USER CODE BEGIN W1_UsageFault_IRQn 0 */
142 /* USER CODE END W1_UsageFault_IRQn 0 */
143 }
144 }
145
146 /**
147 * @brief This function handles Debug monitor.
148 */
DebugMon_Handler(void)149 void DebugMon_Handler(void)
150 {
151 /* USER CODE BEGIN DebugMonitor_IRQn 0 */
152
153 /* USER CODE END DebugMonitor_IRQn 0 */
154 /* USER CODE BEGIN DebugMonitor_IRQn 1 */
155
156 /* USER CODE END DebugMonitor_IRQn 1 */
157 }
158
159 /******************************************************************************/
160 /* STM32F4xx Peripheral Interrupt Handlers */
161 /* Add here the Interrupt Handlers for the used peripherals. */
162 /* For the available peripheral interrupt handler names, */
163 /* please refer to the startup file (startup_stm32f4xx.s). */
164 /******************************************************************************/
165
166 /**
167 * @brief This function handles TIM6 global interrupt, DAC1 and DAC2 underrun error interrupts.
168 */
TIM6_DAC_IRQHandler(void)169 void TIM6_DAC_IRQHandler(void)
170 {
171 /* USER CODE BEGIN TIM6_DAC_IRQn 0 */
172
173 /* USER CODE END TIM6_DAC_IRQn 0 */
174 HAL_TIM_IRQHandler(&htim6);
175 /* USER CODE BEGIN TIM6_DAC_IRQn 1 */
176
177 /* USER CODE END TIM6_DAC_IRQn 1 */
178 }
179
180 /**
181 * @brief This function handles USB On The Go HS global interrupt.
182 */
OTG_HS_IRQHandler(void)183 void OTG_HS_IRQHandler(void)
184 {
185 /* USER CODE BEGIN OTG_HS_IRQn 0 */
186
187 /* USER CODE END OTG_HS_IRQn 0 */
188 HAL_HCD_IRQHandler(&hhcd_USB_OTG_HS);
189 /* USER CODE BEGIN OTG_HS_IRQn 1 */
190
191 /* USER CODE END OTG_HS_IRQn 1 */
192 }
193
194 /**
195 * @brief This function handles LTDC global interrupt.
196 */
LTDC_IRQHandler(void)197 void LTDC_IRQHandler(void)
198 {
199 /* USER CODE BEGIN LTDC_IRQn 0 */
200
201 /* USER CODE END LTDC_IRQn 0 */
202 HAL_LTDC_IRQHandler(&hltdc);
203 /* USER CODE BEGIN LTDC_IRQn 1 */
204
205 /* USER CODE END LTDC_IRQn 1 */
206 }
207
208 /**
209 * @brief This function handles DMA2D global interrupt.
210 */
DMA2D_IRQHandler(void)211 void DMA2D_IRQHandler(void)
212 {
213 /* USER CODE BEGIN DMA2D_IRQn 0 */
214
215 /* USER CODE END DMA2D_IRQn 0 */
216 HAL_DMA2D_IRQHandler(&hdma2d);
217 /* USER CODE BEGIN DMA2D_IRQn 1 */
218
219 /* USER CODE END DMA2D_IRQn 1 */
220 }
221
222 /* USER CODE BEGIN 1 */
223
224 /* USER CODE END 1 */
225 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
226