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.

MSP430FR6989: configuring pins from UART to inactive in low power applications

Part Number: MSP430FR6989


Tool/software:

Hi MSP experts,

In our application, we initially use pins P2.0 and P2.1 for UART communication. After a certain time, the pins are no longer used and should be "inactive", there is no external hardware wiring at the pins.
Pins are configured as follows once used:

P2SEL0 |= (BIT1 | BIT0);
P2SEL1 &= ~(BIT1 | BIT0);
P2DIR |= (BIT1 | BIT0);
P2OUT &= ~(BIT1 | BIT0);

- Secondary module port function, output low

According to the user guide, the functionality of unused pins should be set to I/O function Output Low, which is why we have come up with the following questions:

1.Can the module override the pin configuration such as turning the UART RX pin into input instead of output low?
2.If so, is the input operated via pull-up/down?
3.How does the current draw change when the pins are set to Secondary Module Port Function and Output Low? Are there any internal leakage currents here?
4.Do you see any other configuration issues?

Thank you,

Marinus

  • 0) The output-low recommendation really only applies to pins that are not (and will never be) connected to anything. [I always wished they had used the word "unconnected" rather than "unused".] Any other cases should deal with the (potential) connections. E.g. if connected, RXD is (normally) driven high by the other end of the wire; even if it's only rarely connected you shouldn't drive it low.

    1) Yes, the UART sets the pin direction, overriding the PxDIR setting. [This is not the case for e.g. Timers; you have to check the datasheet Pin Function tables [Ref datasheet Tables 6-20ff] to know.]

    2) No; RXD is an input, and TXD is driven (mostly) high when the UART is enabled. The internal (REN) resistor does operate when the pin is input, whether from the UART or PxDIR [Ref datasheet (SLAS789D) Fig 6-2].

    3) See above; the "Output" part doesn't matter, though the "Low" will affect the REN resistor polarity.

    4) Enabling the internal pullup (REN) resistor on RXD is probably a good idea.

  • Hi,

    Agreed with Bruce's comment, an additional comment here. It seems that you want to change the UART TX /RX pin function to output low before entering LPM to save power. 

    You can usually set the UART TX pin to output low when you want this pin to be inactive. But for the UART RX pin, it depends on the hardware connection. If there is an external pull up resistor on the RX pin, then you can set RX pin as output high to be inactive to save power. 

    Best regards,

    Cash Hao

**Attention** This is a public forum