通过uart串口收到从蓝牙传过来的数据,但是在stm32程序中用于判断语句的时候用不了,怎么解决?

最近在做平衡小车,用的是stm32cubeIDE进行程序编写,目前是在做蓝牙遥控部分,从手机的蓝牙串口调试助手aap上发送指令A,通过小车上的OLED可以显示接收到的指令是A,但是用于if判断语句时,执行不了里面的语句,我猜想是接收到的指令与if(uart_receive== (uint8_t*)0x5A)里我输入的指令不匹配造成的,请问一下各位大神,这个问题怎么解决呀?
下面是代码:

//usart接收中断函数
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
    if (huart->Instance == USART2)
    {
        HAL_UART_Receive_IT(&huart2,uart_receive,1);
         RunState();
          printf("Flag_Qian= %d\r\n",Flag_Qian);
          printf("Flag_Hou= %d\r\n",Flag_Hou);
          printf("Flag_Left= %d\r\n",Flag_Left);
          printf("Flag_Right= %d\r\n",Flag_Right);
//      rxCompleted=SET; //接收完成
//      __HAL_UART_ENABLE_IT(huart, UART_IT_IDLE); //�?�? IDLE 中断
    }
}

//执行函数


void RunState(void)

{
    if (uart_receive > (uint8_t*)10)
    {
        if(uart_receive== (uint8_t*)0x5A)
            Flag_Qian=0,Flag_Hou=0,Flag_Left=0,Flag_Right=0;
        else if(uart_receive==(uint8_t*)0x41)
            Flag_Qian=1,Flag_Hou=0,Flag_Left=0,Flag_Right=0;
        else if(uart_receive==(uint8_t*)0x45)
            Flag_Qian=0,Flag_Hou=1,Flag_Left=0,Flag_Right=0;
        else if(uart_receive==(uint8_t*)0x42||uart_receive==(uint8_t*)0x43||uart_receive==(uint8_t*)0x44)
            Flag_Qian=0,Flag_Hou=0,Flag_Left=0,Flag_Right=1; 
        else if(uart_receive==(uint8_t*)0x46||uart_receive==(uint8_t*)0x47||uart_receive==(uint8_t*)0x48)       //ÓÒ
            Flag_Qian=0,Flag_Hou=0,Flag_Left=1,Flag_Right=0;
        else
            Flag_Qian=0,Flag_Hou=0,Flag_Left=0,Flag_Right=0;

    }

}

https://bbs.csdn.net/topics/392376183?list=55782821