STM32串口printf()重定向问题

2025-03-29 22:09:08
推荐回答(3个)
回答1:

你先试试自己的串口是否配置正确,所以可以使用USART_SendData(USART1, (uint8_t) ch);这个函数随便发个字符a之类的,如果这个没问题,再检查是否是重定向的问题

回答2:

/printf从定向
int fputc(int ch,FILE *p)
{
USART_SendData(USART2,(u8)ch);
while(USART_GetFlagStatus(USART2,USART_FLAG_TXE)==RESET);
return ch;
}

这个是我的重定向函数,串口跟你选择不一样,其他都一样的,所以我想这一部分你可能没有问题吧,想想有没有其他地方出现问题呢!

回答3:

除了这么写还要在使用前对相关串口初始化