SLAU929 April   2024 MSPM0C1104 , MSPM0G3505 , MSPM0G3506 , MSPM0G3507 , MSPM0L1105 , MSPM0L1227 , MSPM0L1227-Q1 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1304 , MSPM0L1305 , MSPM0L1306 , MSPM0L2227 , MSPM0L2228 , MSPM0L2228-Q1

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1MSPM0 Portfolio Overview
    1. 1.1 Introduction
    2. 1.2 Portfolio Comparison of Microchip AVR ATmega and ATiny MCUs to MSPM0
  5. 2Ecosystem and Migration
    1. 2.1 Software Ecosystem Comparison
      1. 2.1.1 MSPM0 Software Development Kit (MSPM0 SDK)
      2. 2.1.2 MPLAB X IDE vs Code Composer Studio IDE (CCS)
      3. 2.1.3 MPLAB Code Configurator vs SysConfig
    2. 2.2 Hardware Ecosystem
    3. 2.3 Debug Tools
    4. 2.4 Migration Process
    5. 2.5 Migration and Porting Example
  6. 3Core Architecture Comparison
    1. 3.1 CPU
    2. 3.2 Embedded Memory Comparison
      1. 3.2.1 Flash Features
      2. 3.2.2 Flash Organization
        1. 3.2.2.1 Memory Banks
        2. 3.2.2.2 Flash Memory Regions
        3. 3.2.2.3 NONMAIN Memory
      3. 3.2.3 Embedded SRAM
    3. 3.3 Power Up and Reset Summary and Comparison
    4. 3.4 Clocks Summary and Comparison
    5. 3.5 MSPM0 Operating Modes Summary and Comparison
      1. 3.5.1 Operating Modes Comparison
      2. 3.5.2 MSPM0 Capabilities in Lower Power Modes
      3. 3.5.3 Entering Lower-Power Modes
    6. 3.6 Interrupt and Events Comparison
      1. 3.6.1 Interrupts and Exceptions
      2. 3.6.2 Event Handler and EXTI (Extended Interrupt and Event Controller)
    7. 3.7 Debug and Programming Comparison
      1. 3.7.1 Bootstrap Loader (BSL) Programming Options
  7. 4Digital Peripheral Comparison
    1. 4.1 General-Purpose I/O (GPIO, IOMUX)
    2. 4.2 Universal Asynchronous Receiver-Transmitter (UART)
    3. 4.3 Serial Peripheral Interface (SPI)
    4. 4.4 I2C
    5. 4.5 Timers (TIMGx, TIMAx)
    6. 4.6 Windowed Watchdog Timer (WWDT)
    7. 4.7 Real-Time Clock (RTC)
  8. 5Analog Peripheral Comparison
    1. 5.1 Analog-to-Digital Converter (ADC)
    2. 5.2 Comparator (COMP)
    3. 5.3 Digital-to-Analog Converter (DAC)
    4. 5.4 Operational Amplifier (OPA)
    5. 5.5 Voltage References (VREF)
  9. 6References

General-Purpose I/O (GPIO, IOMUX)

MSPM0 GPIO functionality covers all of the features offered by the ATmega and ATtiny devices, with additional functionality. Microchip 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, and so forth.
  • 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 Microchip's GPIO. MSPM0 devices also offer a number of additional functions that are unavailable for Microchip ATmega and ATtiny devices.

Table 4-1 GPIO Feature Comparison
Feature ATmega ATtiny MSPM0G, MSPM0L,MSPM0C
Output modes Push-pull
Open drain with pullup
Push-pull
Open drain with pullup
Push-pull
Open drain with pullup or pulldown
GPIO speed selection Data unavailable 2.5ns rise time, 2.0ns fall time ODIO pins: 120ns
All others: 0.3*fmax = 3.75ns @ 80MHz
High-drive GPIO Data unavailable 100mA combined per pin group Equivalent, called High Drive IO (HDIO)
Input modes Floating
Pull-up
Analog
Floating
Pull-up
Analog
Equivalent
Atomic bit set and reset Yes Yes Equivalent
Alternate functions Configured with configuration register Configured with configuration register Equivalent
MSPM0 uses IOMUX
Wake-up GPIO pin state change GPIO pin state change Equivalent
GPIO controlled by DMA No No Yes
User controlled input filtering to reject glitches less than 1, 3, or 8 ULPCLK periods No No Yes
User controllable input hysteresis No No Yes

GPIO code examples

Information about GPIO code examples can be found in the MSPM0 SDK examples guide.