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.

TM4C123BE6PM: TM4C123x UART interrupt

Part Number: TM4C123BE6PM

Hi,

Let me talk about UART of TM4C123BE6PM

When UART 6 receives normal communication data before clearing the UARTRSR register after framing error detection,
which interrupt should be enter "received complete interrupt" or "overrun error interrupt"?

Bes Regards
Hiroyasu

  • Might you want to (further) consider your "language usage" here? Can the "communication data" received - be classified as "Normal" - when a "framing error" occurs?

    As a, "Non-Vendor" (outsider) we were taught - to be, "Untrusting" of Received Data - when (any) form of "issue or error" arose...
    I thought it "useful" to "make that point" - I defer to vendor agents now - to provide "insider" interrupt guidance...

  • Hi,

    We think these situation.

    (1) Framing error occurred due to noise entering the receive line

    (2) Framing error Interrupt occurred, framing error UARTDR register
    Lead (clear)

    (3) Abandonment of UARTRSR register
    * If you do not clear it can not trigger the same type of error next time the driver library
    In the comments
    It is written.
    // ************************************************ **************************
    ***
    //
    //! Clears all reported receiver errors.
    //!
    //! \ param ulBase is the base address of the UART port.
    //!
    //! This function is used to clear all receiver error condition via via //! UARTRxErrorGet (). If using the overrun, framing error, parity error or //! Break interrupts, this function must be called after clearing the interrupt // to ensure that later errors of the same type trigger another interrupt.
    //!
    //! \ return None.
    //
    // ************************************************ **************************
    ***
    void
    UARTRxErrorClear (unsigned long ulBase)
    {
    : (Abbreviation)
    }

    (4) Noises were received in the receiving line, but no framing error interrupt occurred.

    (5) Receive normal communication data

    In this case, Which of "reception complete interrupt" and "overrun error interrupt" is inserted after (5)?

    And I need to get answer from Tier too.

    Best regards
    Hiroyasu
  • Please see section 14.3.9 of the datasheet http://www.ti.com/lit/ds/symlink/tm4c123be6pm.pdf#page=888

    I think the following paragraph is related to your question:

    In summary, it is up to the UART interrupt service routine as to the order it addresses multiple interrupt requests from the UART.

  • Dear Bob

    Thank you for your reply !

    My question's points are below:

    Is it necessary to read(dummy read)"data register (UARTDR)" when a framing error occurs?

    It means is it possible to occur overrun error and not occur interrupt

    after framing error and the next data is received without reading the data register ?

    Is it necessary to read(dummy read)"data register (UARTDR)" when a overrun error occurs?

    It means is it possible to occur overrun error and not occur interrupt

    after overrun error and the next data is received without reading the data register ?

    Best Regards

    Hiroyasu