Datasheet

Table Of Contents
Bits Name Description Type Reset
1 ABORT When set, the controller initiates the transfer abort. - 0:
ABORT not initiated or ABORT done - 1: ABORT operation
in progress The software can abort the I2C transfer in
master mode by setting this bit. The software can set this
bit only when ENABLE is already set; otherwise, the
controller ignores any write to ABORT bit. The software
cannot clear the ABORT bit once set. In response to an
ABORT, the controller issues a STOP and flushes the Tx
FIFO after completing the current transfer, then sets the
TX_ABORT interrupt after the abort operation. The ABORT
bit is cleared automatically after the abort operation.
For a detailed description on how to abort I2C transfers,
refer to 'Aborting I2C Transfers'.
Reset value: 0x0
0x0 ABORT operation not in progress
0x1 ABORT operation in progress
RW 0x0
0 ENABLE Controls whether the DW_apb_i2c is enabled. - 0: Disables
DW_apb_i2c (TX and RX FIFOs are held in an erased state)
- 1: Enables DW_apb_i2c Software can disable
DW_apb_i2c while it is active. However, it is important that
care be taken to ensure that DW_apb_i2c is disabled
properly. A recommended procedure is described in
'Disabling DW_apb_i2c'.
When DW_apb_i2c is disabled, the following occurs: - The
TX FIFO and RX FIFO get flushed. - Status bits in the
IC_INTR_STAT register are still active until DW_apb_i2c
goes into IDLE state. If the module is transmitting, it stops
as well as deletes the contents of the transmit buffer after
the current transfer is complete. If the module is receiving,
the DW_apb_i2c stops the current transfer at the end of
the current byte and does not acknowledge the transfer.
In systems with asynchronous pclk and ic_clk when
IC_CLK_TYPE parameter set to asynchronous (1), there is
a two ic_clk delay when enabling or disabling the
DW_apb_i2c. For a detailed description on how to disable
DW_apb_i2c, refer to 'Disabling DW_apb_i2c'
Reset value: 0x0
0x0 I2C is disabled
0x1 I2C is enabled
RW 0x0
I2C: IC_STATUS Register
Offset: 0x70
Description
I2C Status Register
This is a read-only register used to indicate the current transfer status and FIFO status. The status register may be read
at any time. None of the bits in this register request an interrupt.
RP2040 Datasheet
4.3. I2C 508