STM32F429开发板串口收发程序中的aRxBuffer[0]疑问

2019-07-20 07:25发布

void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
        if(huart->Instance==USART1)
        {
                if((USART_RX_STA&0x8000)==0)
                {
                        if(USART_RX_STA&0x4000)
                        {
                                if(aRxBuffer[0]!=0x0a)USART_RX_STA=0;
                                else USART_RX_STA|=0x8000;        
                        }
                        else
                        {        
                                if(aRxBuffer[0]==0x0d)USART_RX_STA|=0x4000;
                                else
                                {
                                        USART_RX_BUF[USART_RX_STA&0X3FFF]=aRxBuffer[0] ;
                                        USART_RX_STA++;
                                        if(USART_RX_STA>(USART_REC_LEN-1))USART_RX_STA=0;         
                                }                 
                        }
                }

        }
}


请教一下论坛大神,串口接收程序中,接收到了0X0D,判断下一个接收到的数据是不是0x0A为什么总是查看aRxBuffer[0]数组0的值而不是1 2 3 4其他值

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