CubeMX基础配置就不再赘述了,讲一下串口设置,如图:
波特率115200,1个停止位,8个数据位,无校验位。咱只讲printf重定向,所以就不开中断了。
printf重定向代码段如下:
#include <stdio.h>
int fputc(int ch, FILE *p)
{
HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xffff);
return ch;
}
注意:
1、在调用printf()函数时记得包含<stdio.h>头文件
2、需要在keil5软件中勾选Target中的use MicroLIB选项,否则单片机会卡死
到此stm32 printf重定向便完成了,需要打印数据时,直接调用printf函数即可。