Mercurial > public > ostc4
annotate Small_CPU/Src/stm32f4xx_it_v3.c @ 923:6fc0e3d230e4 Evo_2_23 tip
UART6 DMA handling:
Make sure that RX transmission uses DMA stream 2
author | Ideenmodellierer |
---|---|
date | Mon, 04 Nov 2024 20:21:02 +0100 |
parents | 7c996354b8ac |
children |
rev | line source |
---|---|
38 | 1 /** |
2 ****************************************************************************** | |
3 * @file GPIO/GPIO_IOToggle/Src/stm32f4xx_it.c | |
4 * @author MCD Application Team | |
5 * @version V1.1.0 | |
6 * @date 26-June-2014 | |
7 * @brief Main Interrupt Service Routines. | |
8 * This file provides template for all exceptions handler and | |
9 * peripherals interrupt service routine. | |
10 ****************************************************************************** | |
11 * @attention | |
12 * | |
13 * <h2><center>© COPYRIGHT(c) 2014 STMicroelectronics</center></h2> | |
14 * | |
15 * Redistribution and use in source and binary forms, with or without modification, | |
16 * are permitted provided that the following conditions are met: | |
17 * 1. Redistributions of source code must retain the above copyright notice, | |
18 * this list of conditions and the following disclaimer. | |
19 * 2. Redistributions in binary form must reproduce the above copyright notice, | |
20 * this list of conditions and the following disclaimer in the documentation | |
21 * and/or other materials provided with the distribution. | |
22 * 3. Neither the name of STMicroelectronics nor the names of its contributors | |
23 * may be used to endorse or promote products derived from this software | |
24 * without specific prior written permission. | |
25 * | |
26 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | |
27 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |
28 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | |
29 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE | |
30 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |
31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | |
32 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | |
33 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | |
34 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |
35 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
36 * | |
37 ****************************************************************************** | |
38 */ | |
39 | |
40 /* Includes ------------------------------------------------------------------*/ | |
41 #include "baseCPU2.h" | |
42 #include "stm32f4xx_it_v3.h" | |
43 | |
44 /** @addtogroup STM32F4xx_HAL_Examples | |
45 * @{ | |
46 */ | |
47 | |
48 /** @addtogroup GPIO_IOToggle | |
49 * @{ | |
50 */ | |
51 | |
52 /* Private typedef -----------------------------------------------------------*/ | |
53 /* Private define ------------------------------------------------------------*/ | |
54 /* Private macro -------------------------------------------------------------*/ | |
55 /* Private variables ---------------------------------------------------------*/ | |
56 extern I2C_HandleTypeDef I2cHandle; | |
57 extern SPI_HandleTypeDef hspi1; | |
58 extern RTC_HandleTypeDef RTCHandle; | |
59 extern ADC_HandleTypeDef AdcHandle; | |
60 | |
662 | 61 extern UART_HandleTypeDef huart1; |
62 extern DMA_HandleTypeDef hdma_usart1_rx; | |
916
4832981f9af8
External sensor UART: Switch to DMA TX transfers:
Ideenmodellierer
parents:
662
diff
changeset
|
63 extern DMA_HandleTypeDef hdma_usart1_tx; |
922 | 64 extern UART_HandleTypeDef huart6; |
65 extern DMA_HandleTypeDef hdma_usart6_rx; | |
66 extern DMA_HandleTypeDef hdma_usart6_tx; | |
38 | 67 /* Private function prototypes -----------------------------------------------*/ |
68 /* Private functions ---------------------------------------------------------*/ | |
69 | |
70 /******************************************************************************/ | |
71 /* Cortex-M4 Processor Exceptions Handlers */ | |
72 /******************************************************************************/ | |
73 | |
74 /** | |
75 * @brief This function handles NMI exception. | |
76 * @param None | |
77 * @retval None | |
78 */ | |
79 void NMI_Handler(void) | |
80 { | |
81 } | |
82 | |
83 /** | |
84 * @brief This function handles Hard Fault exception. | |
85 * @param None | |
86 * @retval None | |
87 */ | |
88 void HardFault_Handler(void) | |
89 { | |
90 /* Go to infinite loop when Hard Fault exception occurs */ | |
42 | 91 HAL_NVIC_SystemReset(); /* TODO Exception occures during startup and no iwdg is active ==> Call reset till iwdg is added */ |
38 | 92 while (1) |
93 { | |
94 } | |
95 } | |
96 | |
97 /** | |
98 * @brief This function handles Memory Manage exception. | |
99 * @param None | |
100 * @retval None | |
101 */ | |
102 void MemManage_Handler(void) | |
103 { | |
104 /* Go to infinite loop when Memory Manage exception occurs */ | |
105 while (1) | |
106 { | |
107 } | |
108 } | |
109 | |
110 /** | |
111 * @brief This function handles Bus Fault exception. | |
112 * @param None | |
113 * @retval None | |
114 */ | |
115 void BusFault_Handler(void) | |
116 { | |
117 /* Go to infinite loop when Bus Fault exception occurs */ | |
118 while (1) | |
119 { | |
120 } | |
121 } | |
122 | |
123 /** | |
124 * @brief This function handles Usage Fault exception. | |
125 * @param None | |
126 * @retval None | |
127 */ | |
128 void UsageFault_Handler(void) | |
129 { | |
130 /* Go to infinite loop when Usage Fault exception occurs */ | |
131 while (1) | |
132 { | |
133 } | |
134 } | |
135 | |
136 /** | |
137 * @brief This function handles SVCall exception. | |
138 * @param None | |
139 * @retval None | |
140 */ | |
141 void SVC_Handler(void) | |
142 { | |
143 } | |
144 | |
145 /** | |
146 * @brief This function handles Debug Monitor exception. | |
147 * @param None | |
148 * @retval None | |
149 */ | |
150 void DebugMon_Handler(void) | |
151 { | |
152 } | |
153 | |
154 /** | |
155 * @brief This function handles PendSVC exception. | |
156 * @param None | |
157 * @retval None | |
158 */ | |
159 void PendSV_Handler(void) | |
160 { | |
161 } | |
162 | |
163 /** | |
164 * @brief This function handles SysTick Handler. | |
165 * @param None | |
166 * @retval None | |
167 */ | |
104 | 168 //void SysTick_Handler(void) |
169 //{ | |
170 // HAL_IncTick(); | |
171 //} | |
38 | 172 |
173 | |
174 /******************************************************************************/ | |
175 /* STM32F4xx Peripherals Interrupt Handlers */ | |
176 /* Add here the Interrupt Handler for the used peripheral(s) (PPP), for the */ | |
177 /* available peripheral interrupt handler's name please refer to the startup */ | |
178 /* file (startup_stm32f4xx.s). */ | |
179 /******************************************************************************/ | |
180 /** | |
181 * @brief This function handles I2C event interrupt request. | |
182 * @param None | |
183 * @retval None | |
184 * @Note This function is redefined in "main.h" and related to I2C data transmission | |
185 */ | |
186 void I2Cx_EV_IRQHandler(void) | |
187 { | |
188 HAL_I2C_EV_IRQHandler(& I2cHandle); | |
189 } | |
190 | |
191 /** | |
192 * @brief This function handles I2C error interrupt request. | |
193 * @param None | |
194 * @retval None | |
195 * @Note This function is redefined in "main.h" and related to I2C error | |
196 */ | |
197 void I2Cx_ER_IRQHandler(void) | |
198 { | |
199 HAL_I2C_ER_IRQHandler(& I2cHandle); | |
200 } | |
201 | |
202 | |
203 /** | |
204 * @brief This function handles SPI interrupt request. | |
205 * @param None | |
206 * @retval None | |
207 */ | |
208 | |
209 /* | |
210 void SPI1_IRQHandler(void) | |
211 { | |
212 HAL_SPI_IRQHandler(&hspi1); | |
213 } | |
214 */ | |
215 | |
216 /** | |
217 * @brief This function handles DMA Tx interrupt request. | |
218 * @param None | |
219 * @retval None | |
220 */ | |
221 void DMA2_Stream3_IRQHandler(void) | |
222 { | |
223 HAL_DMA_IRQHandler(hspi1.hdmatx); | |
224 } | |
225 | |
226 /** | |
227 * @brief This function handles DMA Rx interrupt request. | |
228 * @param None | |
229 * @retval None | |
230 */ | |
231 void DMA2_Stream0_IRQHandler(void) | |
232 { | |
233 HAL_DMA_IRQHandler(hspi1.hdmarx); | |
234 } | |
235 | |
236 /** | |
237 * @brief This function handles PPP interrupt request. | |
238 * @param None | |
239 * @retval None | |
240 */ | |
241 | |
662 | 242 void DMA2_Stream5_IRQHandler(void) |
243 { | |
244 HAL_DMA_IRQHandler(&hdma_usart1_rx); | |
245 } | |
246 | |
916
4832981f9af8
External sensor UART: Switch to DMA TX transfers:
Ideenmodellierer
parents:
662
diff
changeset
|
247 void DMA2_Stream7_IRQHandler(void) |
4832981f9af8
External sensor UART: Switch to DMA TX transfers:
Ideenmodellierer
parents:
662
diff
changeset
|
248 { |
4832981f9af8
External sensor UART: Switch to DMA TX transfers:
Ideenmodellierer
parents:
662
diff
changeset
|
249 HAL_DMA_IRQHandler(&hdma_usart1_tx); |
4832981f9af8
External sensor UART: Switch to DMA TX transfers:
Ideenmodellierer
parents:
662
diff
changeset
|
250 } |
38 | 251 |
922 | 252 #ifdef ENABLE_GPIO_V2 |
923 | 253 void DMA2_Stream2_IRQHandler(void) |
922 | 254 { |
255 HAL_DMA_IRQHandler(&hdma_usart6_rx); | |
256 } | |
257 | |
258 void DMA2_Stream6_IRQHandler(void) | |
259 { | |
260 HAL_DMA_IRQHandler(&hdma_usart6_tx); | |
261 } | |
262 #endif | |
38 | 263 /******************************************************************************/ |
264 /* STM32F4xx Peripherals Interrupt Handlers */ | |
265 /* Add here the Interrupt Handler for the used peripheral(s) (PPP), for the */ | |
266 /* available peripheral interrupt handler's name please refer to the startup */ | |
267 /* file (startup_stm32f4xx.s). */ | |
268 /******************************************************************************/ | |
269 | |
270 | |
271 /** | |
272 * @brief This function handles RTC Auto wake-up interrupt request. | |
273 * @param None | |
274 * @retval None | |
275 */ | |
276 void RTC_WKUP_IRQHandler(void) | |
277 { | |
278 HAL_RTCEx_WakeUpTimerIRQHandler(&RTCHandle); | |
279 } | |
280 | |
281 /** | |
282 * @brief This function handles External line 0 interrupt request. | |
283 * @param None | |
284 * @retval None | |
285 */ | |
286 void EXTI15_10_IRQHandler(void) | |
287 { | |
288 HAL_GPIO_EXTI_IRQHandler(0xFF); | |
289 } | |
290 | |
291 /* button */ | |
292 void EXTI0_IRQHandler(void) | |
293 { | |
294 HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_0); | |
295 } | |
296 | |
181 | 297 /* wireless 1 + 2 => was removed from OSTC4 code => placeholder*/ |
38 | 298 void EXTI1_IRQHandler(void) |
299 { | |
300 HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_1); | |
301 } | |
302 | |
303 void EXTI2_IRQHandler(void) | |
304 { | |
305 HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_2); | |
306 } | |
307 | |
308 /* test button */ | |
309 void EXTI3_IRQHandler(void) | |
310 { | |
311 HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_3); | |
312 } | |
313 | |
314 /** | |
315 * @brief This function handles ADC interrupt request. | |
316 * @param None | |
317 * @retval None | |
318 */ | |
319 void ADC_IRQHandler(void) | |
320 { | |
321 HAL_ADC_IRQHandler(&AdcHandle); | |
322 } | |
323 | |
662 | 324 |
325 void USART1_IRQHandler(void) | |
326 { | |
327 HAL_UART_IRQHandler(&huart1); | |
328 } | |
329 | |
922 | 330 #ifdef ENABLE_GPIO_V2 |
331 void USART6_IRQHandler(void) | |
332 { | |
333 HAL_UART_IRQHandler(&huart6); | |
334 } | |
335 #endif | |
336 | |
38 | 337 /** |
338 * @brief This function handles PPP interrupt request. | |
339 * @param None | |
340 * @retval None | |
341 */ | |
342 /*void PPP_IRQHandler(void) | |
343 { | |
344 }*/ | |
345 | |
346 /** | |
347 * @} | |
348 */ | |
349 | |
350 /** | |
351 * @} | |
352 */ | |
353 | |
354 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |