USART3 运行一段时间后,出现了发送一直等待

2019-07-20 01:33发布

用USART3 查询发送数据到DTU ,然后中断接收DTU数据,运行几个小时后了,出现发送一直等待,死循环在while了(黄 {MOD}的部分)。
void USART3_Send(u8 *sendbuf,u16 len)
{
  u16 i;  
  
  for(i = 0;i<len;i++)
  {  
   USART_SendData(USART3, sendbuf);                   //向串口3发送数据
   while(USART_GetFlagStatus(USART3,USART_FLAG_TC)!=SET);                 //等待发送结束
  }
}
file:///C:/Users/zhaoliyong/AppData/Local/YNote/data/bjjtzly@126.com/1be9d9805d90457596961b16935e44aa/clipboard.png


file:///C:/Users/zhaoliyong/AppData/Local/YNote/data/bjjtzly@126.com/1be9d9805d90457596961b16935e44aa/clipboard.png


file:///C:/Users/zhaoliyong/AppData/Local/YNote/data/bjjtzly@126.com/1be9d9805d90457596961b16935e44aa/clipboard.png


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