请教:modbus rtu发送数据,有时两帧断不开,怎么写好

void SendData(u8 *buff,u8 len)
{
  while(len--)
  {
    while(USART_GetFlagStatus(USART2,USART_FLAG_TXE)==RESET);
    USART_SendData(USART2,*(buff++));
  }
   while(USART_GetFlagStatus(USART2,USART_FLAG_TC)==RESET);
   Dela(24*72000);
}

void Delay(uint32_t nCount)
{
  for (; nCount !=0; nCount--);
}