This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSP432E401Y: Value of UARTRSR register in UART receive interrupt

Guru 12020 points
Part Number: MSP432E401Y

Hi, 

I have a question about the UART receive interrupt.

In the receive interrupt, the interrupt factor is cleared and the UART Error is acquired as described below.

 

// Clear interrupt factor
UARTIntClear (m_ui32UartModule [enPortId], ui32IntStatus);

// Get UART Error
ui32UartError = UARTRxErrorGet (m_ui32UartModule [enPortId]);

 

After clearing the interrupt factor, when trying to get a UART error, the UARTRSR value was read as 0x00.

(Originally, 0x01 should be read by the value of UARTRSR, but it has probably been cleared by UARTIntClear)

Why is UARTRSR cleared after the interrupt factor is cleared?

When I set the breakpoint with UARTIntClear () and checked the value of UARTRSR, I got 0x01 (before it was cleared).

The Excel sheet shows is after the step execution that the RSR register value clears:

Result (1).xlsx

Thanks,