The I2C supports the following modes and features:
- Modes
- Host mode
- Client mode
- Multi-Host mode
- Features
- Supports Standard mode (100
kHz), Fast mode (400 kHz) and Fast mode Plus (1 MHz) modes of operation
- Dedicated address, receive,
and transmit buffers
- Up to four unique client
addresses
- General Call addressing
- 7-bit and 10-bit addressing
with optional masking
- Interrupts for:
- Start condition
- Restart condition
- Stop condition
- Address match
- Data Write
- Acknowledge
Status
- NACK detection
- Data Byte Count
- Bus Collision
- Bus Time-out
- Clock stretching for:
- RX buffer full
- TX buffer empty
- Incoming address
match
- Data Write
- Acknowledge
Status
- Bus Collision Detection with
Arbitration
- Bus Time-out Detection
- Selectable clock sources
- Clock prescaler
- Selectable Serial Data (SDA)
Hold Time
- Dedicated I2C Pad
(I/O) control
- Standard GPIO or
I2C-specific slew rate control
- Selectable
I2C pull-up levels
- I2C-specific, SMBus 2.0/3.0, or standard GPIO input
threshold level selections
- Integrated Direct Memory
Access (DMA) support
- Remappable Pin Locations
Using Peripheral Pin Select (PPS)