串口在第一次中断后,进不去第二次中断,求解

int32_t main(void)
{
    ///< UART 端口初始化
    App_PortInit();

    ///< UART 初始化
    App_UartInit();

    while(1)
    {
        
        if(u8RxFlg)
        {
            u8RxFlg = 0;
            Uart_SetTb8(M0P_UART1,UartEven,u8RxData[0]);
            Uart_SendDataPoll(M0P_UART1,u8RxData[0]);
            Uart_SetTb8(M0P_UART1,UartEven,u8RxData[1]);
            Uart_SendDataPoll(M0P_UART1,u8RxData[1]);
            
        }
    }
}

///< UART0 中断服务函数
void Uart0_IRQHandler(void)
{
    if(TRUE == Uart_GetStatus(M0P_UART0, UartRC))
    {
        Uart_ClrStatus(M0P_UART0, UartRC);

        u8RxData[1] = Uart_ReceiveData(M0P_UART0);
        u8RxFlg = 1;

    }

}

//串口引脚配置
static void App_PortInit(void)
{
    stc_gpio_cfg_t stcGpioCfg;

    DDL_ZERO_STRUCT(stcGpioCfg);

    Sysctrl_SetPeripheralGate(SysctrlPeripheralGpio,TRUE); //使能GPIO模块时钟

    ///<TX
    stcGpioCfg.enDir = GpioDirOut;
    Gpio_Init(GpioPort1, GpioPin4, &stcGpioCfg);
    Gpio_SetAfMode(GpioPort1, GpioPin4, GpioAf6);          //配置P14 端口为URART1_TX

    ///<RX
    stcGpioCfg.enDir = GpioDirIn;
    Gpio_Init(GpioPort1, GpioPin5, &stcGpioCfg);
    Gpio_SetAfMode(GpioPort1, GpioPin5, GpioAf6);          //配置P15 端口为URART1_RX
}

static void _UartBaudCfg(void)
{
    uint16_t timer=0;

    stc_uart_baud_cfg_t stcBaud;
    stc_bt_cfg_t stcBtCfg;

    DDL_ZERO_STRUCT(stcBaud);
    DDL_ZERO_STRUCT(stcBtCfg);

    //外设时钟使能
    Sysctrl_SetPeripheralGate(SysctrlPeripheralBt,TRUE);//模式0/2可以不使能
    Sysctrl_SetPeripheralGate(SysctrlPeripheralUart1,TRUE);

    stcBaud.bDbaud  = 0u;//双倍波特率功能
    stcBaud.u32Baud = 9600u;//更新波特率位置
    stcBaud.enMode  = UartMode1; //计算波特率需要模式参数
    stcBaud.u32Pclk = Sysctrl_GetPClkFreq(); //获取PCLK
    timer = Uart_SetBaudRate(M0P_UART0, &stcBaud);

    stcBtCfg.enMD = BtMode2;
    stcBtCfg.enCT = BtTimer;
    Bt_Init(TIM0, &stcBtCfg);//调用basetimer1设置函数产生波特率
    Bt_ARRSet(TIM0,timer);
    Bt_Cnt16Set(TIM0,timer);
    Bt_Run(TIM0);

}


static void App_UartInit(void)
{
    stc_uart_cfg_t  stcCfg;

    _UartBaudCfg();

    stcCfg.enRunMode = UartMode1;//测试项,更改此处来转换4种模式测试
    Uart_Init(M0P_UART0, &stcCfg);

    ///< UART中断配置
    Uart_EnableIrq(M0P_UART0, UartRxIrq);
    Uart_ClrStatus(M0P_UART0, UartRC);
    EnableNvic(UART0_IRQn, IrqLevel3, TRUE);

}

已解决,中断中不能对IO口进行操作

应该是没有重新开启串口中断,中断服务函数的处理流程应该是,进入中断后-关闭串口接收中断(你没有)-设置中断标志位(也就是你的flag那个变量)- 清除中断状态(也就是你的CLEAR那个函数)-执行中断里面需要处理的程序(也就是你的那个RECV函数),执行完后应该重新开启串口接收中断(你没有)