1.实现方法
STM32中串口输出使用printf函数,有两种方法1.使用microlib;2.使用标准库;
(1) 使用microlib方法
①添加printf的头文件 #include <stdio.h>
②重写int fputc(int ch, FILE *f)函数
int fputc(int ch, FILE *f);函数
int fputc(int ch, FILE *f)
{
USART_SendData(USART1, (uint8_t) ch);
while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET);
return ch;
}
若未使用库函数,需将USART_SendData、USART_GetFlagStatus重写。
③修改一下选中Use MicroLIB Target——Code Generation——选中Use MicroLIB。
(2) 使用标准库
不选中Use MicroLIB 。
① 添加printf的头文件 #include <stdio.h>
② 加入下面代码
③ 01 //加入以下代码,支持printf函数,而不需要选择us