1 /* USER CODE BEGIN Header */
2 /**
3   ******************************************************************************
4   * @file    stm32h7xx_it.c
5   * @brief   Interrupt Service Routines.
6   ******************************************************************************
7   * @attention
8   *
9   * Copyright (c) 2023 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 "stm32h7xx_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 DCMI_HandleTypeDef hdcmi;
59 extern SD_HandleTypeDef hsd1;
60 /* USER CODE BEGIN EV */
61 
62 /* USER CODE END EV */
63 
64 /******************************************************************************/
65 /*           Cortex Processor Interruption and Exception Handlers          */
66 /******************************************************************************/
67 /**
68   * @brief This function handles Non maskable interrupt.
69   */
NMI_Handler(void)70 void NMI_Handler(void)
71 {
72   /* USER CODE BEGIN NonMaskableInt_IRQn 0 */
73 
74   /* USER CODE END NonMaskableInt_IRQn 0 */
75   /* USER CODE BEGIN NonMaskableInt_IRQn 1 */
76   while (1)
77   {
78   }
79   /* USER CODE END NonMaskableInt_IRQn 1 */
80 }
81 
82 /**
83   * @brief This function handles Hard fault interrupt.
84   */
HardFault_Handler(void)85 void HardFault_Handler(void)
86 {
87   /* USER CODE BEGIN HardFault_IRQn 0 */
88 
89   /* USER CODE END HardFault_IRQn 0 */
90   while (1)
91   {
92     /* USER CODE BEGIN W1_HardFault_IRQn 0 */
93     /* USER CODE END W1_HardFault_IRQn 0 */
94   }
95 }
96 
97 /**
98   * @brief This function handles Memory management fault.
99   */
MemManage_Handler(void)100 void MemManage_Handler(void)
101 {
102   /* USER CODE BEGIN MemoryManagement_IRQn 0 */
103 
104   /* USER CODE END MemoryManagement_IRQn 0 */
105   while (1)
106   {
107     /* USER CODE BEGIN W1_MemoryManagement_IRQn 0 */
108     /* USER CODE END W1_MemoryManagement_IRQn 0 */
109   }
110 }
111 
112 /**
113   * @brief This function handles Pre-fetch fault, memory access fault.
114   */
BusFault_Handler(void)115 void BusFault_Handler(void)
116 {
117   /* USER CODE BEGIN BusFault_IRQn 0 */
118 
119   /* USER CODE END BusFault_IRQn 0 */
120   while (1)
121   {
122     /* USER CODE BEGIN W1_BusFault_IRQn 0 */
123     /* USER CODE END W1_BusFault_IRQn 0 */
124   }
125 }
126 
127 /**
128   * @brief This function handles Undefined instruction or illegal state.
129   */
UsageFault_Handler(void)130 void UsageFault_Handler(void)
131 {
132   /* USER CODE BEGIN UsageFault_IRQn 0 */
133 
134   /* USER CODE END UsageFault_IRQn 0 */
135   while (1)
136   {
137     /* USER CODE BEGIN W1_UsageFault_IRQn 0 */
138     /* USER CODE END W1_UsageFault_IRQn 0 */
139   }
140 }
141 
142 /**
143   * @brief This function handles System service call via SWI instruction.
144   */
SVC_Handler(void)145 void SVC_Handler(void)
146 {
147   /* USER CODE BEGIN SVCall_IRQn 0 */
148 
149   /* USER CODE END SVCall_IRQn 0 */
150   /* USER CODE BEGIN SVCall_IRQn 1 */
151 
152   /* USER CODE END SVCall_IRQn 1 */
153 }
154 
155 /**
156   * @brief This function handles Debug monitor.
157   */
DebugMon_Handler(void)158 void DebugMon_Handler(void)
159 {
160   /* USER CODE BEGIN DebugMonitor_IRQn 0 */
161 
162   /* USER CODE END DebugMonitor_IRQn 0 */
163   /* USER CODE BEGIN DebugMonitor_IRQn 1 */
164 
165   /* USER CODE END DebugMonitor_IRQn 1 */
166 }
167 
168 /**
169   * @brief This function handles Pendable request for system service.
170   */
PendSV_Handler(void)171 void PendSV_Handler(void)
172 {
173   /* USER CODE BEGIN PendSV_IRQn 0 */
174 
175   /* USER CODE END PendSV_IRQn 0 */
176   /* USER CODE BEGIN PendSV_IRQn 1 */
177 
178   /* USER CODE END PendSV_IRQn 1 */
179 }
180 
181 /**
182   * @brief This function handles System tick timer.
183   */
SysTick_Handler(void)184 void SysTick_Handler(void)
185 {
186   /* USER CODE BEGIN SysTick_IRQn 0 */
187 
188   /* USER CODE END SysTick_IRQn 0 */
189   HAL_IncTick();
190   /* USER CODE BEGIN SysTick_IRQn 1 */
191 
192   /* USER CODE END SysTick_IRQn 1 */
193 }
194 
195 /******************************************************************************/
196 /* STM32H7xx Peripheral Interrupt Handlers                                    */
197 /* Add here the Interrupt Handlers for the used peripherals.                  */
198 /* For the available peripheral interrupt handler names,                      */
199 /* please refer to the startup file (startup_stm32h7xx.s).                    */
200 /******************************************************************************/
201 
202 /**
203   * @brief This function handles SDMMC1 global interrupt.
204   */
SDMMC1_IRQHandler(void)205 void SDMMC1_IRQHandler(void)
206 {
207   /* USER CODE BEGIN SDMMC1_IRQn 0 */
208 
209   /* USER CODE END SDMMC1_IRQn 0 */
210   HAL_SD_IRQHandler(&hsd1);
211   /* USER CODE BEGIN SDMMC1_IRQn 1 */
212 
213   /* USER CODE END SDMMC1_IRQn 1 */
214 }
215 
216 /**
217   * @brief This function handles DCMI global interrupt.
218   */
DCMI_IRQHandler(void)219 void DCMI_IRQHandler(void)
220 {
221   /* USER CODE BEGIN DCMI_IRQn 0 */
222 
223   /* USER CODE END DCMI_IRQn 0 */
224   HAL_DCMI_IRQHandler(&hdcmi);
225   /* USER CODE BEGIN DCMI_IRQn 1 */
226 
227   /* USER CODE END DCMI_IRQn 1 */
228 }
229 
230 /* USER CODE BEGIN 1 */
231 
232 /* USER CODE END 1 */
233