Mercurial > public > ostc4
comparison Small_CPU/Src/stm32f4xx_it_v3.c @ 916:4832981f9af8 Evo_2_23
External sensor UART: Switch to DMA TX transfers:
The previous version used polling tx function to transfer data. Because of the short command length of the protocols supported this was no big issue. New protocolls (like GNSS) have longer command sequence which have an impact to the program flow. That's why the implementation has been changed to DMA transmission.
author | Ideenmodellierer |
---|---|
date | Mon, 28 Oct 2024 20:34:58 +0100 |
parents | 1b995079c045 |
children | 7c996354b8ac |
comparison
equal
deleted
inserted
replaced
915:ff318ae65dd0 | 916:4832981f9af8 |
---|---|
58 extern RTC_HandleTypeDef RTCHandle; | 58 extern RTC_HandleTypeDef RTCHandle; |
59 extern ADC_HandleTypeDef AdcHandle; | 59 extern ADC_HandleTypeDef AdcHandle; |
60 | 60 |
61 extern UART_HandleTypeDef huart1; | 61 extern UART_HandleTypeDef huart1; |
62 extern DMA_HandleTypeDef hdma_usart1_rx; | 62 extern DMA_HandleTypeDef hdma_usart1_rx; |
63 extern DMA_HandleTypeDef hdma_usart1_tx; | |
63 | 64 |
64 /* Private function prototypes -----------------------------------------------*/ | 65 /* Private function prototypes -----------------------------------------------*/ |
65 /* Private functions ---------------------------------------------------------*/ | 66 /* Private functions ---------------------------------------------------------*/ |
66 | 67 |
67 /******************************************************************************/ | 68 /******************************************************************************/ |
239 void DMA2_Stream5_IRQHandler(void) | 240 void DMA2_Stream5_IRQHandler(void) |
240 { | 241 { |
241 HAL_DMA_IRQHandler(&hdma_usart1_rx); | 242 HAL_DMA_IRQHandler(&hdma_usart1_rx); |
242 } | 243 } |
243 | 244 |
245 void DMA2_Stream7_IRQHandler(void) | |
246 { | |
247 HAL_DMA_IRQHandler(&hdma_usart1_tx); | |
248 } | |
244 | 249 |
245 /******************************************************************************/ | 250 /******************************************************************************/ |
246 /* STM32F4xx Peripherals Interrupt Handlers */ | 251 /* STM32F4xx Peripherals Interrupt Handlers */ |
247 /* Add here the Interrupt Handler for the used peripheral(s) (PPP), for the */ | 252 /* Add here the Interrupt Handler for the used peripheral(s) (PPP), for the */ |
248 /* available peripheral interrupt handler's name please refer to the startup */ | 253 /* available peripheral interrupt handler's name please refer to the startup */ |