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.

AM2612-Q1: AM2612 UART automatic RTS in MCAL

Part Number: AM2612-Q1
Other Parts Discussed in Thread: AM2612, , SYSCONFIG

Hi experts,

 

Good day! I am asking for customer.

Does AM2612 UART support automatic RTS pin toggling for RS-485 transmission? I can see that the port can be configured for RTS multiplexing mode, but there's no option to select RS-485 in UART module in MCAL. Could you help to check how to configure it in MCAL?

Best Regards

Kita

 

  • Hi Kita,

    Let me loop in UART SME for AM26 firstly. 

    Best Regards,

    Allison

  • Hi Allison,

    Is there any update on this request?

    Best Regards

  • Hi Kita,

    Thank you for your question regarding RS-485 automatic RTS control on the AM2612-Q1.

    Hardware Capability Confirmed

    The AM2612 UART hardware does support RS-485 mode with automatic direction control. According to the AM261x Technical Reference Manual (SPRUJB6B), the RS-485 external transceiver direction control is implemented through the UART_MDR3 register.

    RS-485 Configuration

    To enable RS-485 mode with automatic RTS direction control, configure the following register bits:

    1. UART_MDR3 DIR_EN - Set to 0x1 to enable RS-485 External Transceiver Direction
    2. UART_MDR3 DIR_POL - Sets the polarity for the RTS/DIR signal:
      • 0 = TX: RTS=0, RX: RTS=1
      • 1 = TX: RTS=1, RX: RTS=0

    The hardware automatically monitors the TX FIFO and TX shift register to control the direction signal. When both are empty, the transceiver is set to RX mode. There is a guard band delay counter of 3 bit clock cycles after the TX shift register empties to allow time for the stop bit to transition through the transceiver before switching to receive mode.

    MCAL Configuration

    Since there may not be a direct RS-485 GUI option in the current MCAL version, you will need to configure RS-485 mode through direct register access. This can be done in a post-initialization callback or user configuration hook after the standard UART initialization:

    /* Enable RS-485 mode with automatic direction control */
    UARTx->MDR3 |= (1U << 4U);  /* DIR_EN - Enable RS-485 direction control */
    UARTx->MDR3 |= (1U << 3U);  /* DIR_POL - Set polarity (adjust based on your transceiver) */

    Additional Verification Steps

    1. Confirm that the RTS/DIR pin is correctly assigned in your PINMUX/SysConfig settings
    2. Verify your MCAL version - newer releases may include explicit RS-485 configuration options
    3. Review section 13.1.4.4.8.2 "RS-485 Mode" in the AM261x TRM (SPRUJB6B) for complete details
    4. Check the MCU+ SDK for any RS-485 reference examples

    Reference Documentation

    • AM261x Technical Reference Manual (SPRUJB6B), Section 13.1.4.4.8.2
    • UART_MDR3 Register details at offset 0x80h

    Please let me know if you need clarification on the register configuration or have additional questions about the implementation.

    Best Regards,
    Zackary Fleenor

  • Fleenor,

    when will RS-485 option added in MCAL?

    Best Regards

  • Hi Kita,

    I am checking with our MCAL team on this.

    Best Regards,

    Allison

  • Hi Kita,

    Current PORT module supports Rxd, Txd and RTS PIN configurations necessary for RS-485, but there are no plans to add RS-485 support into the UART MCAL at this time. If there is urgent need, please reach out to me via email and I can put you in contact with MCAL team - they don't have resources available currently, so would need to discuss if this is feasible and when. 

    Best Regards,

    Allison