From 48aaaf7fb88ec4cac2b24d5cdd943b80db5c2f8a Mon Sep 17 00:00:00 2001 From: Erick Ahmed Date: Sat, 4 Jul 2026 18:24:57 +0200 Subject: [PATCH] Gracefully handle errors instead of sending to error handler --- Core/Src/cansend.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/Core/Src/cansend.c b/Core/Src/cansend.c index 351c5f3..da8a2e0 100644 --- a/Core/Src/cansend.c +++ b/Core/Src/cansend.c @@ -136,7 +136,19 @@ void HAL_UART_TxCpltCallback(UART_HandleTypeDef *huart) */ void HAL_UART_ErrorCallback(UART_HandleTypeDef *huart) { - Error_Handler(); + if (huart->Instance == USART1) + { + __HAL_UART_CLEAR_OREFLAG(huart); + __HAL_UART_CLEAR_FEFLAG(huart); + __HAL_UART_CLEAR_NEFLAG(huart); + __HAL_UART_CLEAR_PEFLAG(huart); + + HAL_UART_DMAStop(huart); + + huart->gState = HAL_UART_STATE_READY; + + osSemaphoreRelease(xUARTDMASemaphore); + } } /* END HAL_UART_ErrorCallback */