当我们加入重定向函数后,使用printf仍然没有输出结果,则还需要以下步骤。
int fputc(int ch,FILE *p) //函数默认的 在使用printf函数时自动调用
{
USART_SendData(USART1,(uint8_t)ch); //写一个字节到USART
while(USART_GetFlagStatus(USART1,USART_FLAG_TXE)==RESET);
return ch;
}
方法1:
勾选使用微库![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/599d3a0f6aa5103480cc005056da0d0e.png)
方法2:
如果不使用方法1,可以再代码中加入以下代码。
struct __FILE
{
int handle;
};
FILE __stdout;