There is some posibility that UART get an overrun flag due to big data flows in my project.Sometimes an RX interrupt is executing,I have also checked overrun flag in the s_uart_Isr(UART0, s_uartHandle[0]) and overrun flag isn't set.But at the end of the IRQ handler,the overrun flag is set.So no another interrupt will be generated.I have to add two lines of code as below,how can I avoid this?Enable the interrupt nesting?(I'm using FreeRTOS)
void UART0_DriverIQRHanlder(void)
{
s_uart_Isr(UART0, s_uartHandle[0]);
/* I have to add two lines as below to clear overrun */
if(UART_GetStatusFlags(UART0) & kUART_RxOverrunFlag)
UART_ClearStatusFlags(UART0, kUART_RxOverrunFlag);
SDK_ISR_EXIT_BARRIER;
}