stm32f103c8t6串口中断接收数据收不到

2019-07-21 00:16发布

请教一下,这样写法是否有问题,昨天晚上数据接收测试了一下,有概率收不到数据(应该是数据缓冲为空), 或者是没进入中断(猜的),接收数据没收到。。。
void Usart2_ReceiveString(void)
{
    if(uart_p2<UART2_BUFF_SIZE)
    {
        if(USART_GetITStatus(USART2, USART_IT_RXNE) == SET)
        {

                                                USART_ClearITPendingBit(USART2, USART_IT_RXNE);
            uart_buff2[uart_p2] = USART_ReceiveData(USART2);
            uart_p2++;
        }
    }
                else
                {
                        USART_ClearITPendingBit(USART2, USART_IT_RXNE);
                        clean_rebuff2();      
                }
}


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