UART is interrupt driven. When IRQ for the UART is asserted, its ISR is called. In the ISR, after it reads buffer, it raises an Event. A separate Thread waiting at the Event activated when the Event is posted. In the Thread, it disables IRQ for the Uart. Then it does further processing. I expected that next IRQ will not be served until its IRQ is re-enabled again. But it seems to me that, the ISR has been called during the IRQ is disabled. Can anyone help me explain why?
I didn't find the right solution from the internet.