Stm32 printf float variable
问题 I want to log out from stm32f405 via usart. In my syscall.c file i realize function to print via usart: int _write(int file, char *ptr, int len) { int todo; for (todo = 0; todo < len; todo++) { usart_send_char( *ptr++ ); } return len; } Function usart_send_char( *ptr++ ); work as expected. But when i call: printf("%s, %d, %3.2f\r\n", "asd", 777, 13.2 ); I get: asd, 777, 0.00 The float variable not printed correctly. Makefile: PROCESSOR = -mcpu=cortex-m4 -mthumb -mfloat-abi=softfp -mfpu=fpv4