关于printf函数写串口问题

2019-07-20 18:35发布

关于写串口,要么全是自己写,要么用原子哥的printf函数,但最近把两者混合使用出了点问题,比如

while(1){
  USART_SendData(USART1,data);
  while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);
  printf("i=%d ",i);
  delay_ms(1000);
}

如果单步调试,data i都能收到,但是程序一跑起来data就收不到,只能收到i。在  while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);
后加个小延时就能收到data了,有没有哪位大神能讲讲其中的门道。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。