SLAAEI9 December 2023 MSPM0C1103 , MSPM0C1104 , MSPM0C1104-Q1 , MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G3105 , MSPM0G3105-Q1 , MSPM0G3106 , MSPM0G3106-Q1 , MSPM0G3107 , MSPM0G3107-Q1 , MSPM0G3505 , MSPM0G3505-Q1 , MSPM0G3506 , MSPM0G3506-Q1 , MSPM0G3507 , MSPM0G3507-Q1 , MSPM0L1105 , MSPM0L1106 , MSPM0L1228
MSPM0 and STM8 both support I2C peripherals. STM8 uses Master and Slave to represent the both sides of communication, while MSPM0 uses Controller and Target respectively. Overall MSPM0 and STM8 I2C support is comparable with notable difference outlined in Table 4-5.
Feature | STM8S and STML | MSPM0L and MSPM0C |
---|---|---|
Controller and target modes | Yes | Yes |
Multi-controller capability | Yes | Yes |
Maximum transfer rate | 400 kHz(Fast speed) | 1Mbps (Fast-mode Plus) |
Addressing mode | 7 bit or 10 bit | 7 bit |
Address number (Target mode) | 2 addresses | 2 addresses |
General call | Yes | Yes |
Event management | Yes | Yes |
PEC management | Yes | Yes |
Clock stretching | Yes | Yes |
Wakeup function (low-power mode) | Yes | Yes |
Software reset | Yes | Yes |
FIFO/Buffer | 1 byte | TX: 8 byte |
RX: 8 byte | ||
DMA | Yes | Yes |
Programmable analog and digital noise filters | Yes | Yes |
I2C Code Examples
Information about I2C code examples can be found in the MSPM0 SDK examples guide.