From 88b3fd873ca3ed24cf692ba4614f5b3cce890297 Mon Sep 17 00:00:00 2001 From: Erick Ahmed Date: Wed, 24 Jun 2026 15:09:43 +0200 Subject: [PATCH] Use semaphore instead of HAL on write function --- Core/Src/main.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Core/Src/main.c b/Core/Src/main.c index 3f1a4be..15cb418 100644 --- a/Core/Src/main.c +++ b/Core/Src/main.c @@ -83,7 +83,10 @@ static void MX_USART1_UART_Init(void); /* USER CODE BEGIN PF */ int _write(int file, char *ptr, int len) { - for (int i = 0; i < len; i++) ITM_SendChar((*ptr++)); + if (osKernelGetState() == osKernelRunning) osSemaphoreAcquire(xUARTDMASemaphore, osWaitForever); + HAL_UART_Transmit(&huart1, (uint8_t*)ptr, len, 100); + + if (osKernelGetState() == osKernelRunning) osSemaphoreRelease(xUARTDMASemaphore); return len; }