SLAAE56A November 2022 – March 2023 MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G3105 , MSPM0G3106 , MSPM0G3107 , MSPM0G3505 , MSPM0G3506 , MSPM0G3507 , MSPM0L1105 , MSPM0L1106 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346
MSPM0 GPIO functionality covers virtually all the features provided by STM32G0 GPIO. STM32G0 uses the term GPIO to refer to all the functionality responsible for managing the device pins. However, MSPM0 uses a slightly different nomenclature, namely:
MSPM0 GPIO refers to the hardware capable of reading and writing IO, generating interrupts, etc.
MSPM0 IOMUX refers to the hardware responsible for connecting different internal digital peripherals to a pin. IOMUX services many different digital peripherals including, but not limited to, GPIO.
Together MSPM0 GPIO and IOMUX cover the same functionality as STM32G0 GPIO. Additionally, MSPM0 offers functionality not available in STM32G0 devices such as DMA connectivity, controllable input filtering and event capabilities.
Feature | STM32G0 | MSPM0G and MSPM0L |
---|---|---|
Output modes | Push-pull Open drain with pullup or pulldown | Equivalent |
GPIO speed selection | Speed selection for each I/O | Similar MSPM0 offers Standard IO (SDIO) on all IO pins. SDIO is comparable or better than STM GPIO speed=01. MSPM0 High-Speed IO (HSIO) is available on select pins. HSIO is comparable to STM GPIO speed=10. |
High-drive GPIO | Approximately 20 mA | Equivalent, called High Drive IO (HDIO) |
Input modes | Floating Pullup or pulldown Analog | Equivalent |
Atomic bit set and reset | Yes | Equivalent |
GPIO locking | Register locking mechanism | No MSPM0 equivalent |
Alternate functions | Selection register | Equivalent MSPM0 uses IOMUX |
Fast toggle | Can change every two clocks | Equivalent, MSPM0 can toggle pins every clock cycle |
Wake-up | GPIO pin state change | Equivalent |
GPIO controlled by DMA | No | Only available on MSPM0 |
User controlled input filtering to reject glitches less than 1, 3, or 8 ULPCLK periods | No | Only available on MSPM0 |
User controllable input hysteresis | No | Only available on MSPM0 |
Information about GPIO code examples can be found in the MSPM0 SDK examples guide.