SLAU929A April   2024  – June 2025 MSPM0C1104 , MSPM0G3505 , MSPM0G3506 , MSPM0G3507 , MSPM0H3216 , MSPM0L1105 , MSPM0L1227 , MSPM0L1227-Q1 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1304 , MSPM0L1305 , MSPM0L1306 , MSPM0L2227 , MSPM0L2227-Q1 , 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
  10. 7Revision History

I2C

MSPM0 and Microchip 8-bit MCUs both support I2C. In MSPM0, the I2C functionality is handled by the I2C module. In Microchip devices, this is slightly different. In ATmega169/329 devices, I2C is handled by the Universal Serial Interface. In the ATmega48/88, it is managed by the 2-Wire Serial Interface. In the ATtiny, the two wire interface or TWI handles I2C communications.

Table 4-4 I2C Feature Comparison
Feature

ATmega

ATtiny

MSPM0
Controller and target modesYes

Yes

Yes
Multi-controller capabilityYes

Yes

Yes
Standard-mode (up to 100 kHz)Yes

Yes

Yes
Fast-mode (up to 400 kHz)Yes

Yes

Yes
Fast-mode Plus (up to 1 MHz)

No

Yes

Yes
Addressing mode7 bit

7 or 10 bit

7 or 10 bit
Peripheral addresses

1 address

1 address

2 addresses
General callNo for ATmega 169/329, yes for ATmega48/88

Yes

Yes
Programmable setup and hold timesNo

No

No
Event managementNo

No

Yes
Clock stretchingNo for ATmega169/329, yes for ATmega48/88

Yes

Yes
Software resetYes

Yes

Yes
FIFO/BufferNo

No

TX: 8 byte
RX: 8 byte
DMA

No

No

Yes
Programmable analog and digital noise filters

NN/A for Atmega169/329, Input filter not programmable for ATmega48/88

Input filter not programmable

Yes

I2C code examples

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