Implement _write function for printf

This commit is contained in:
L-diy
2023-10-31 17:19:03 +01:00
parent 7a0790a477
commit 5e487e3c1a

View File

@@ -22,7 +22,8 @@
/* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */
#include <errno.h>
#include <sys/unistd.h>
/* USER CODE END Includes */
/* Private typedef -----------------------------------------------------------*/
@@ -430,7 +431,24 @@ static void MX_GPIO_Init(void)
}
/* USER CODE BEGIN 4 */
int _write(int file, char *data, int len) {
HAL_StatusTypeDef status;
switch (file) {
case STDOUT_FILENO:
case STDERR_FILENO:
status = HAL_UART_Transmit(&huart1, (uint8_t*)data, len, HAL_MAX_DELAY);
if (status != HAL_OK) {
errno = EIO;
return -1;
}
break;
default:
errno = EBADF;
return -1;
}
return len;
}
/* USER CODE END 4 */
/**