GD32A50x User Manual
508
20.
Inter-integrated circuit interface (I2C)
20.1.
Overview
The I2C (inter-integrated circuit) module provides an I2C interface which is an industry
standard two-line serial interface for MCU to communicate with external I2C interface. I2C
bus uses two serial lines: a serial data line (SDA) and a serial clock line (SCL).
The I2C interface implements standard I2C protocol with standard mode, fast mode and fast
mode plus as well as CRC calculation and checking, SMBus (system management bus), and
PMBus (power management bus). It also supports multi-master I2C bus. The I2C interface
provides DMA mode for users to reduce CPU overload.
20.2.
Characteristics
Parallel-bus to I2C-bus protocol converter and interface.
Both master and slave functions with the same interface.
Bi-directional data transfer between master and slave.
Supports 7-bit and 10-bit addressing and general call addressing.
Multiple 7-bit slave addresses (2 address, 1 with configurable mask).
Programmable setup time and hold time.
Multi-master capability.
Supports standard mode (up to 100 kHz) and fast mode (up to 400 kHz) and fast mode
plus (up to 1MHz).
Configurable SCL stretching in slave mode.
Supports DMA mode.
SMBus 3.0 and PMBus 1.3 compatible.
Optional PEC (packet error checking) generation and check.
Programmable analog and digital noise filters.
20.3.
Function overview
Figure 20-1. I2C module block diagram
below provides details on the internal configuration
of the I2C interface.