SLAAE82A March   2023  – August 2025 MSPM0C1105 , MSPM0C1106 , MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G1518 , MSPM0G1519 , MSPM0G3105 , MSPM0G3106 , MSPM0G3106-Q1 , MSPM0G3107 , MSPM0G3107-Q1 , MSPM0G3505 , MSPM0G3506 , MSPM0G3506-Q1 , MSPM0G3507 , MSPM0G3507-Q1 , MSPM0G3518 , MSPM0G3518-Q1 , MSPM0G3519 , MSPM0G3519-Q1 , MSPM0H3216 , MSPM0L1105 , MSPM0L1106 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346

 

  1.   1
  2.   2
  3.   Revision History
  4.   Trademarks

Description

This example demonstrates how to interface with signals up to 5V using open-drain IOs (ODIOs) on an MSPM0 device. With the use of external pullup resistors, the open-drain IOs allow for communication across multiple voltage domains at voltage levels higher than the MSPM0 VDD supply voltage.

Figure 1-1 displays a functional block diagram of the peripherals used in this example.

 Subsystem Functional Block Diagram Figure 1-1 Subsystem Functional Block Diagram

Required Peripherals

This application can use up to two open-drain IOs.

Sub-block Functionality Peripheral Use Notes
IO 2 GPIO pins PA0 and PA1, can only use 5V tolerant open-drain IOs

Design steps

  1. Connect appropriate jumpers.
  2. Determine the pullup resistance needed for your application.
    1. The required pullup strength depends on the timing requirements of your application and the capacitance of your connections. For greater capacitance, you need to have a stronger (that is, low resistance) pullup. A discussion on determining the exact resistance of a pullup is beyond the scope of this document but can be found in the I2C Bus Pullup Resistor Calculation application note.
  3. Configure peripherals that are used on these pins in software (for example, UART, I2C, or Timer) in SysConfig.
  4. Write application code, dependent on peripherals used.

Design considerations

  1. Pullup resistor: A pullup resistor is required to output high for I2C and UART functions on ODIOs.
  2. Drive strength control: This is not available for ODIO types.

Additional Resources