stm32 串口接收缓冲区数据清除

2019-08-17 07:35发布

void USART2_IRQHandler(void) 



    if(USART_GetFlagStatus(USART2,USART_IT_RXNE)==SET) 
    {               
        RX2 = USART_ReceiveData(USART2); 
        USART_SendData(USART1,RX2);         USART_ClearFlag(USART2,USART_FLAG_RXNE);         while(USART_GetFlagStatus(USART2, USART_FLAG_TC) == RESET) ;              
    }

    if(USART_GetITStatus(USART2, USART_IT_RXNE) != RESET) 
    { 
        /* 清接收中断标志*/ 
        USART_ClearITPendingBit(USART2, USART_IT_RXNE);
    }

}

  USART_ReceiveData(USART2)是返回最近接收的数据   如果没有新的数据接收  怎么样清除原来接收的数据 

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