SWRU543B January 2019 – June 2025 CC3230S , CC3230SF , CC3235MODS , CC3235MODSF , CC3235S , CC3235SF
Table 7-3 lists the memory-mapped registers for the I2C. All register offset addresses not listed in Table 7-3 should be considered as reserved locations and the register contents should not be modified.
All addresses given are relative to the I2C base address: 0x4002.0000.
The I2C module clock must be enabled before the registers can be programmed. There must be a delay of three system clocks after the I2C module clock is enabled before any I2C module registers are accessed.
The hw_i2c.h file in the TivaWare Driver Library uses a base address of 0x800 for the I2C slave registers. Be aware when using registers with offsets from 0x800 to 0x818 that TivaWare for E Series uses an offset from 0x000 to 0x018 with the slave base address.
| Offset | Acronym | Register Name | Section |
|---|---|---|---|
| 0h | I2CMSA | I2C Master Slave Address | Section 7.3.1 |
| 4h | I2CMCS | I2C Master Control/Status | Section 7.3.2 |
| 8h | I2CMDR | I2C Master Data | Section 7.3.3 |
| Ch | I2CMTPR | I2C Master Timer Period | Section 7.3.4 |
| 10h | I2CMIMR | I2C Master Interrupt Mask | Section 7.3.5 |
| 14h | I2CMRIS | I2C Master Control/Status | Section 7.3.6 |
| 18h | I2CMMIS | I2C Master Masked Interrupt Status | Section 7.3.7 |
| 1Ch | I2CMICR | I2C Master Interrupt Clear | Section 7.3.8 |
| 20h | I2CMCR | I2C Master Configuration | Section 7.3.9 |
| 24h | I2CMCLKOCNT | I2C Master Clock Low Timeout Count | Section 7.3.10 |
| 2Ch | I2CMBMON | I2C Master Bus Monitor | Section 7.3.11 |
| 30h | I2CMBLEN | I2C Master Burst Length | Section 7.3.12 |
| 34h | I2CMBCNT | I2C Master Burst Count | Section 7.3.13 |
| 800h | I2CSOAR | I2C Slave Own Address | Section 7.3.14 |
| 804h | I2CSCSR | I2C Slave Control/Status | Section 7.3.15 |
| 808h | I2CSDR | I2C Slave Data | Section 7.3.16 |
| 80Ch | I2CSIMR | I2C Slave Interrupt Mask | Section 7.3.17 |
| 810h | I2CSRIS | I2C Slave Raw Interrupt Status | Section 7.3.18 |
| 814h | I2CSMIS | I2C Slave Masked Interrupt Status | Section 7.3.19 |
| 818h | I2CSICR | I2C Slave Interrupt Clear | Section 7.3.20 |
| 81Ch | I2CSOAR2 | I2C Slave Own Address 2 | Section 7.3.21 |
| 820h | I2CSACKCTL | I2C Slave ACK Control | Section 7.3.22 |
| F00h | I2CFIFODATA | I2C FIFO Data | Section 7.3.23 |
| F04h | I2CFIFOCTL | I2C FIFO Control | Section 7.3.24 |
| F08h | I2CFIFOSTATUS | I2C FIFO Status | Section 7.3.25 |
| FC0h | I2CPP | I2C Peripheral Properties | Section 7.3.26 |
| FC4h | I2CPC | I2C Peripheral Configuration | Section 7.3.27 |
I2CMSA is shown in Figure 7-14 and described in Table 7-4.
Return to Summary Table.
This register consists of 8 bits: 7 address bits (A6-A0), and a Receive/Send bit, which determines if the next operation is a Receive (high), or Transmit (low).
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||||||||||
| R-0h | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | SA | R_S | |||||||||||||
| R-0h | R/W-0h | R/W-0h | |||||||||||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-8 | RESERVED | R | 0h | |
| 7-1 | SA | R/W | 0h | I2C Slave Address This field specifies bits A6 through A0 of the slave address. |
| 0 | R_S | R/W | 0h | Receive/Send The R/S bit specifies if the next master operation is a Receive (High) or Transmit (Low). 0h = Transmit 1h = Receive |
I2CMCS is shown in Figure 7-15 and described in Table 7-5.
Return to Summary Table.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| ACTDMARX | ACTDMATX | RESERVED | |||||
| R/W-0h | R-0h | R-0h | |||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| CLKTO | BUSBSY_OR_BURST | IDLE_OR_QCMD | ARBLST_OR_HS | DATACK_OR_ACK | ADRACK_OR_STOP | ERROR_OR_START | BUSY_OR_RUN |
| R/W-0h | R/W-0h | R/W-1h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h |
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31 | ACTDMARX | R/W | 0h | DMA RX Active Status 0h (R) = DMA RX is not active 1h (R) = DMA RX is active |
| 30 | ACTDMATX | R | 0h | DMA TX Active Status 0h (R) = DMA TX is not active 1h (R) = DMA TX is active. |
| 29-8 | RESERVED | R | 0h | |
| 7 | CLKTO | R/W | 0h | Clock Timeout Error This bit is cleared when the master sends a STOP condition or if the I2C master is reset. 0h (R) = No clock time-out error. 1h (R) = The clock time-out error has occurred. |
| 6 | BUSBSY_OR_BURST | R/W | 0h | Bus Busy (R) or Burst Enable (W) The bit changes based on the START and STOP conditions. 0h (W) = Burst operation is disabled. 0h (R) = The I2C bus is idle. 1h (W) = The master is enabled to burst using the receive and transmit FIFOs. 1h (R) = The I2C bus is busy. Note that the BURST and RUN bits are mutually exclusive. |
| 5 | IDLE_OR_QCMD | R/W | 1h | I2C Idle (R) or Quick Command (W) To execute a quick command, the START, STOP and RUN bits must also be set. After the quick command is issued, the master generates a STOP. 0h (W) = Bus transaction is not a quick command. 0h (R) = The I2C controller is not idle. 1h (W) = The bus transaction is a quick command. 1h (R) = The I2C controller is idle. |
| 4 | ARBLST_OR_HS | R/W | 0h | Arbitration Lost (R) or Reserved (High-Speed Enable Not Supported) (W) 0h (W) = The master operates in Standard or Fast mode as selected by using a value in the I2CMTPR register that results in an SCL frequency of 100 kbps for standard mode, or 400 kbps for fast mode. 0h (R) = The I2C controller won arbitration. 1h (R) = The I2C controller lost arbitration. |
| 3 | DATACK_OR_ACK | R/W | 0h | Acknowledge Data (R) or Data Acknowledge Enable (W) 0h (W) = The received data byte is not acknowledged automatically by the master. 0h (R) = The transmitted data was acknowledged 1h (W) = The received data byte is acknowledged automatically by the master. 1h (R) = The transmitted data was not acknowledged. |
| 2 | ADRACK_OR_STOP | R/W | 0h | Acknowledge Address (R) or Generate STOP (W) 0h (W) = The controller does not generate the STOP condition. 0h (R) = The transmitted address was acknowledged 1h (W) = The controller generates the STOP condition. 1h (R) = The transmitted address was not acknowledged. |
| 1 | ERROR_OR_START | R/W | 0h | Error (R) or Generate START (W) The error can be when the slave address is not acknowledged, or when the transmit data is not acknowledged. 0h (W) = The controller does not generate the START condition. 0h (R) = No error was detected on the last operation. 1h (W) = The controller generates the START or repeated START condition. 1h (R) = An error occurred on the last operation. |
| 0 | BUSY_OR_RUN | R/W | 0h | I2C Busy (R) or I2C Master Enable (W) When the BUSY bit is set, the other status bits are not valid. Note that the BURST and RUN bits are mutually exclusive. 0h (W) = In standard mode, this encoding means the master is unable to transmit or receive data. In Burst mode, this bit is not used and must be set to 0. 0h (R) = The controller is idle. 1h (W) = The master is able to transmit or receive data. Note that this bit cannot be set in burst mode. 1h (R) = The controller is busy. |
| Current State | I2CMSA[0] | I2CMCS[6:0] | Next State Description | ||||||
|---|---|---|---|---|---|---|---|---|---|
| R/S | BURST | QCCMD | HS | ACK | STOP | START | RUN | ||
| Idle | 0 | 0 | 0 | 0 | X(1) | 0 | 1 | 1 | START condition followed by TRANSMIT (master goes to Master Transmit state). |
| 0 | 0 | 0 | 0 | X | 1 | 1 | 1 | START condition followed by a TRANSMIT and STOP condition (master remains in Idle state). | |
| 0 | 1 | 0 | 0 | X | 0 | 1 | 0 | START condition followed by N FIFO-serviced TRANSMITs (master goes to Master Transmit state). | |
| 0 | 1 | 0 | 0 | X | 1 | 1 | 0 | START condition followed by N FIFO-serviced TRANSMITs and STOP condition (master remains in Idle state). | |
| 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | START condition followed by RECEIVE operation with negative ACK (master goes to Master Receive state). | |
| 0 | 0 | 1 | 0 | 0 | 1 | 1 | 1 | Quick Command (Send). After Quick Command is executed, the master returns to Idle state. | |
| 1 | 0 | 1 | 0 | 0 | 1 | 1 | 1 | Quick Command (Receive). After Quick Command is executed, the master returns to Idle state. | |
| 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | START condition followed by RECEIVE and STOP condition (master remains in Idle state). | |
| 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | START condition followed by RECEIVE (master goes to Master Receive state). | |
| 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | START condition followed by N FIFO-serviced RECEIVE operations with a negative ACK on the last RECEIVE operation (master goes to Master Receive state). | |
| 1 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | START condition followed by N FIFO-serviced RECEIVE operations with a negative ACK on the last RECEIVE and STOP condition (master remains in Idle state). | |
| 1 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | START condition followed by N FIFO-serviced RECEIVE operations (master goes to Master Receive state). | |
| 0 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | START/RUN condition where master byte is sent with no ACK; followed by High-Speed transmit Operation. All subsequent transfers are carried out using normal transmit commands. | |
| 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | RUN/BURST condition where master byte is sent with no ACK; followed by High-Speed Burst transmit Operation. | |
| 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | Illegal | |
| 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | Illegal | |
| Master Transmit | X | 0 | 0 | 0 | X | 0 | 0 | 1 | TRANSMIT operation (master remains in Master Transmit state). |
| X | 0 | 0 | 0 | X | 1 | 0 | 0 | STOP condition (master goes to Idle state). | |
| X | 0 | 0 | 0 | X | 1 | 0 | 1 | TRANSMIT followed by STOP condition (master goes to Idle state). | |
| X | 1 | 0 | 0 | X | 0 | 0 | 0 | N FIFO-serviced TRANSMIT operations (master remains in Master Transmit state). | |
| X | 1 | 0 | 0 | X | 1 | 0 | 0 | N FIFO-serviced TRANSMIT operations followed by STOP condition (master goes to Idle state). | |
| 0 | 0 | 0 | 0 | X | 0 | 1 | 1 | Repeated START condition followed by a TRANSMIT operation (master remains in Master Transmit state). | |
| 0 | 0 | 0 | 0 | X | 1 | 1 | 1 | Repeated START condition followed by TRANSMIT and STOP condition (master goes to Idle state). | |
| 0 | 1 | 0 | 0 | X | 0 | 1 | 0 | Repeated START condition followed by N FIFO-serviced TRANSMIT operations (master remains in Master Transmit state). | |
| 0 | 1 | 0 | 0 | X | 1 | 1 | 0 | Repeated START condition followed by N FIFO-serviced TRANSMIT operations and STOP condition (master goes to Idle state). | |
| 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | Repeated START condition followed by a RECEIVE operation with a negative ACK (master goes to Master Receive state). | |
| 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | Repeated START condition followed by a RECEIVE and STOP condition (master goes to Idle state). | |
| 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | Repeated START condition followed by RECEIVE operation (master goes to Master Receive state). | |
| 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | Repeated START condition followed by N FIFO-serviced RECEIVE operations with a negative ACK on the last RECEIVE operation (master goes to Master Receive state). | |
| 1 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | Repeated START condition followed by N FIFO-serviced RECEIVE operations and STOP condition (master goes to Idle state). | |
| 1 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | Repeated START condition followed by N FIFO-serviced RECEIVE operations (master goes to Master Receive state). | |
| 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | Illegal | |
| 1 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | Illegal | |
| Master Receive | X | 0 | 0 | 0 | 0 | 0 | 0 | 1 | RECEIVE operation with negative ACK (master remains in Master Receive state). |
| X | 0 | 0 | 0 | X | 1 | 0 | 0 | STOP condition (master goes to Idle state).(2) | |
| X | 0 | 0 | 0 | 0 | 1 | 0 | 1 | RECEIVE operation followed by STOP condition (master goes to Idle state). | |
| X | 0 | 0 | 0 | 1 | 0 | 0 | 1 | RECEIVE operation (master remains in Master Receive state). | |
| X | 1 | 0 | 0 | 0 | 0 | 0 | 0 | N FIFO-serviced RECEIVE operations with negative ACK on the last RECEIVE (master remains in Master Receive state). | |
| X | 1 | 0 | 0 | 0 | 1 | 0 | 0 | N FIFO-serviced RECEIVE operations followed by STOP condition (master goes to Idle state). | |
| X | 1 | 0 | 0 | 1 | 0 | 0 | 0 | N FIFO-serviced RECEIVE operations (master remains in Master Receive state). | |
| X | 0 | 0 | 0 | 1 | 1 | 0 | 1 | Illegal | |
| X | 1 | 0 | 0 | 1 | 1 | 0 | 0 | Illegal | |
| 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | Repeated START condition followed by RECEIVE operation with a negative ACK (master remains in Master Receive state). | |
| 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | Repeated START condition followed by RECEIVE and STOP condition (master goes to Idle state). | |
| 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | Repeated START condition followed by RECEIVE operation (master remains in Master Receive state). | |
| 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | Repeated START condition followed by N FIFO-serviced RECEIVE operations with a negative ACK on the last RECEIVE operation (master remains in Master Receive state). | |
| 1 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | Repeated START condition followed by N FIFO-serviced RECEIVE operations and STOP condition (master goes to Idle state). | |
| 1 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | Repeated START condition followed by N FIFO-serviced RECEIVE operations (master remains in Master Receive state). | |
| 0 | 0 | 0 | 0 | X | 0 | 1 | 1 | Repeated START condition followed by TRANSMIT operation (master goes to Master Transmit state). | |
| 0 | 0 | 0 | 0 | X | 1 | 1 | 1 | Repeated START condition followed by TRANSMIT and STOP condition (master goes to Idle state). | |
| 0 | 1 | 0 | 0 | X | 0 | 1 | 0 | Repeated START condition followed by N FIFO-serviced TRANSMIT operations (master goes to Master Transmit state). | |
| 0 | 1 | 0 | 0 | X | 1 | 1 | 0 | Repeated START condition followed by N FIFO-serviced TRANSMIT operations and STOP condition (master goes to Idle state). | |
| All other combinations not listed are nonoperations. | NOP | ||||||||
I2CMDR is shown in Figure 7-16 and described in Table 7-7.
Return to Summary Table.
This register contains the data to be transmitted when in the master transmit state and the data received when in the master receive state. If the BURST bit is enabled in the I2CMCS register, then the I2CFIFODATA register is used for the current data transmit or receive value and this register is ignored.
This register is read-sensitive. See the register description for details.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | DATA | ||||||||||||||||||||||||||||||
| R-0h | R/W-0h | ||||||||||||||||||||||||||||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-8 | RESERVED | R | 0h | |
| 7-0 | DATA | R/W | 0h | This byte contains the data transferred during a transaction. |
I2CMTPR is shown in Figure 7-17 and described in Table 7-8.
Return to Summary Table.
This register is programmed to set the timer period for the SCL clock and assign the SCL clock to standard.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | PULSEL | ||||||||||||||
| R-0h | R/W-0h | ||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | TPR | ||||||||||||||
| R-0h | R/W-1h | ||||||||||||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-19 | RESERVED | R | 0h | |
| 18-16 | PULSEL | R/W | 0h | Glitch Suppression Pulse Width This field controls the pulse width select for glitch suppression on the SCL and SDA lines. The following values are the glitch suppression values in terms of system clocks. 0h = Bypass 1h = 1 clock 2h = 2 clocks 3h = 3 clocks 4h = 4 clocks 5h = 8 clocks 6h = 16 clocks 7h = 31 clocks |
| 15-7 | RESERVED | R | 0h | |
| 6-0 | TPR | R/W | 1h | Timer Period This field is used in the equation to configure SCL_PERIOD: SCL_PERIOD = 2 -(1 + TPR) -(SCL_LP + SCL_HP) -CLK_PRD where: SCL_PRD is the SCL line period (I2C clock) TPR is the Timer Period register value (range of 1 to 127) SCL_LP is the SCL Low period (fixed at 6) SCL_HP is the SCL High period (fixed at 4) CLK_PRD is the system clock period in ns. |
I2CMIMR is shown in Figure 7-18 and described in Table 7-9.
Return to Summary Table.
This register controls whether a raw interrupt is promoted to a controller interrupt.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | RXFFIM | TXFEIM | RXIM | TXIM | |||
| R-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | |||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| ARBLOSTIM | STOPIM | STARTIM | NACKIM | DMATXIM | DMARXIM | CLKIM | IM |
| R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h |
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-12 | RESERVED | R | 0h | |
| 11 | RXFFIM | R/W | 0h | Receive FIFO Full Interrupt Mask 0h = The RXFFRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The Receive FIFO Full interrupt is sent to the interrupt controller when the RXFFRIS bit in the I2CMRIS register is set. |
| 10 | TXFEIM | R/W | 0h | Transmit FIFO Empty Interrupt Mask Note: The TXFEIM interrupt mask bit in the I2CMIMR register should be clear (masking the TXFE interrupt) when the master is performing an RX Burst from the RXFIFO and should be unmasked before starting a TX FIFO transfers. 0h = The TXFERIS interrupt is suppressed and not sent to the interrupt controller. 1h = The Transmit FIFO Empty interrupt is sent to the interrupt controller when the TXFERIS bit in the I2CMRIS register is set. |
| 9 | RXIM | R/W | 0h | Receive FIFO Request Interrupt Mask 0h = The RXRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The RX FIFO Request interrupt is sent to the interrupt controller when the RXRIS bit in the I2CMRIS register is set. |
| 8 | TXIM | R/W | 0h | Transmit FIFO Request Interrupt Mask 0h = The TXRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The TX FIFO Request interrupt is sent to the interrupt controller when the TXRIS bit in the I2CMRIS register is set. |
| 7 | ARBLOSTIM | R/W | 0h | Transmit FIFO Request Interrupt Mask 0h = The TXRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The TX FIFO Request interrupt is sent to the interrupt controller when the TXRIS bit in the I2CMRIS register is set. |
| 6 | STOPIM | R/W | 0h | STOP Detection Interrupt Mask 0h = The STOPRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The STOP detection interrupt is sent to the interrupt controller when the STOPRIS bit in the I2CMRIS register is set. |
| 5 | STARTIM | R/W | 0h | START Detection Interrupt Mask 0h = The STARTRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The START detection interrupt is sent to the interrupt controller when the STARTRIS bit in the I2CMRIS register is set. |
| 4 | NACKIM | R/W | 0h | Address/Data NACK Interrupt Mask 0h = The NACKRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The address/data NACK interrupt is sent to the interrupt controller when the NACKRIS bit in the I2CMRIS register is set. |
| 3 | DMATXIM | R/W | 0h | Transmit DMA Interrupt Mask 0h = The DMATXRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The transmit DMA complete interrupt is sent to the interrupt controller when the DMATXRIS bit in the I2CMRIS register is set. |
| 2 | DMARXIM | R/W | 0h | Receive DMA Interrupt Mask 0h = The DMARXRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The receive DMA complete interrupt is sent to the interrupt controller when the DMARXRIS bit in the I2CMRIS register is set. |
| 1 | CLKIM | R/W | 0h | Clock Timeout Interrupt Mask 0h = The CLKRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The clock timeout interrupt is sent to the interrupt controller when the CLKRIS bit in the I2CMRIS register is set. |
| 0 | IM | R/W | 0h | Master Interrupt Mask 0h = The RIS interrupt is suppressed and not sent to the interrupt controller. 1h = The master interrupt is sent to the interrupt controller when the RIS bit in the I2CMRIS register is set. |
I2CMRIS is shown in Figure 7-19 and described in Table 7-10.
Return to Summary Table.
This register specifies whether an interrupt is pending.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | RXFFRIS | TXFERIS | RXRIS | TXRIS | |||
| R-0h | R-0h | R-0h | R-0h | R-0h | |||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| ARBLOSTRIS | STOPRIS | STARTRIS | NACKRIS | DMATXRIS | DMARXRIS | CLKRIS | RIS |
| R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h |
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-12 | RESERVED | R | 0h | |
| 11 | RXFFRIS | R | 0h | Receive FIFO Full Raw Interrupt Status This bit is cleared by writing a 1 to the RXFFIC bit in the I2CMICR register. 0h = No interrupt 1h = The Receive FIFO Full interrupt is pending. |
| 10 | TXFERIS | R | 0h | Transmit FIFO Empty Raw Interrupt Status This bit is cleared by writing a 1 to the TXFEIC bit in the I2CMICR register. 0h = No interrupt 1h = The Transmit FIFO Empty interrupt is pending. Note that if the TXFERIS interrupt is cleared (by setting the TXFEIC bit) when the TX FIFO is empty, the TXFERIS interrupt does not reassert, even though the TX FIFO remains empty in this situation. |
| 9 | RXRIS | R | 0h | Receive FIFO Request Raw Interrupt Status This bit is cleared by writing a 1 to the RXIC bit in the I2CMICR register. 0h = No interrupt 1h = The trigger level for the RX FIFO has been reached or there is data in the FIFO and the burst count is zero. Thus, a RX FIFO request interrupt is pending. |
| 8 | TXRIS | R | 0h | Transmit Request Raw Interrupt Status This bit is cleared by writing a 1 to the TXIC bit in the I2CMICR register. 0h = No interrupt 1h = The trigger level for the TX FIFO has been reached and more data is needed to complete the burst. Thus, a TX FIFO request interrupt is pending. |
| 7 | ARBLOSTRIS | R | 0h | Arbitration Lost Raw Interrupt Status This bit is cleared by writing a 1 to the ARBLOSTIC bit in the I2CMICR register. 0h = No interrupt 1h = The Arbitration Lost interrupt is pending. |
| 6 | STOPRIS | R | 0h | STOP Detection Raw Interrupt Status This bit is cleared by writing a 1 to the STOPIC bit in the I2CMICR register. 0h = No interrupt 1h = The STOP Detection interrupt is pending. |
| 5 | STARTRIS | R | 0h | START Detection Raw Interrupt Status This bit is cleared by writing a 1 to the STARTIC bit in the I2CMICR register. 0h = No interrupt 1h = The START Detection interrupt is pending. |
| 4 | NACKRIS | R | 0h | Address/Data NACK Raw Interrupt Status This bit is cleared by writing a 1 to the NACKIC bit in the I2CMICR register. 0h = No interrupt 1h = The address/data NACK interrupt is pending. |
| 3 | DMATXRIS | R | 0h | Transmit DMA Raw Interrupt Status This bit is cleared by writing a 1 to the DMATXIC bit in the I2CMICR register. 0h = No interrupt. 1h = The transmit DMA complete interrupt is pending. |
| 2 | DMARXRIS | R | 0h | Receive DMA Raw Interrupt Status This bit is cleared by writing a 1 to the DMARXIC bit in the I2CMICR register. 0h = No interrupt. 1h = The receive DMA complete interrupt is pending. |
| 1 | CLKRIS | R | 0h | Clock Timeout Raw Interrupt Status This bit is cleared by writing a 1 to the CLKIC bit in the I2CMICR register. 0h = No interrupt. 1h = The clock timeout interrupt is pending. |
| 0 | RIS | R | 0h | Master Raw Interrupt Status This interrupt includes: Master transaction completed Next byte transfer request This bit is cleared by writing a 1 to the IC bit in the I2CMICR register. 0h = No interrupt. 1h = A master interrupt is pending. |
I2CMMIS is shown in Figure 7-20 and described in Table 7-11.
Return to Summary Table.
This register specifies whether an interrupt was signaled.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | RXFFMIS | TXFEMIS | RXMIS | TXMIS | |||
| R-0h | R-0h | R-0h | R-0h | R-0h | |||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| ARBLOSTMIS | STOPMIS | STARTMIS | NACKMIS | DMATXMIS | DMARXMIS | CLKMIS | MIS |
| R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h |
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-12 | RESERVED | R | 0h | |
| 11 | RXFFMIS | R | 0h | Receive FIFO Full Interrupt Mask This bit is cleared by writing a 1 to the RXFFIC bit in the I2CMICR register. 0h = No interrupt. 1h = An unmasked Receive FIFO Full interrupt was signaled and is pending. |
| 10 | TXFEMIS | R | 0h | Transmit FIFO Empty Interrupt Mask This bit is cleared by writing a 1 to the TXFEIC bit in the I2CMICR register. 0h = No interrupt. 1h = An unmasked Transmit FIFO Empty interrupt was signaled and is pending. |
| 9 | RXMIS | R | 0h | Receive FIFO Request Interrupt Mask This bit is cleared by writing a 1 to the RXIC bit in the I2CMICR register. 0h = No interrupt. 1h = An unmasked Receive FIFO Request interrupt was signaled and is pending. |
| 8 | TXMIS | R | 0h | Transmit Request Interrupt Mask This bit is cleared by writing a 1 to the TXIC bit in the I2CMICR register. 0h = No interrupt. 1h = An unmasked Transmit FIFO Request interrupt was signaled and is pending. |
| 7 | ARBLOSTMIS | R | 0h | Arbitration Lost Interrupt Mask This bit is cleared by writing a 1 to the ARBLOSTIC bit in the I2CMICR register. 0h = No interrupt. 1h = An unmasked Arbitration Lost interrupt was signaled and is pending. |
| 6 | STOPMIS | R | 0h | STOP Detection Interrupt Mask This bit is cleared by writing a 1 to the STOPIC bit in the I2CMICR register. 0h = No interrupt. 1h = An unmasked STOP Detection interrupt was signaled and is pending. |
| 5 | STARTMIS | R | 0h | START Detection Interrupt Mask This bit is cleared by writing a 1 to the STARTIC bit in the I2CMICR register. 0h = No interrupt. 1h = An unmasked START Detection interrupt was signaled and is pending. |
| 4 | NACKMIS | R | 0h | Address/Data NACK Interrupt Mask This bit is cleared by writing a 1 to the NACKIC bit in the I2CMICR register. 0h = No interrupt. 1h = An unmasked Address/Data NACK interrupt was signaled and is pending. |
| 3 | DMATXMIS | R | 0h | Transmit DMA Interrupt Status This bit is cleared by writing a 1 to the DMATXIC bit in the I2CMICR register. 0h = No interrupt. 1h = An unmasked transmit DMA complete interrupt was signaled and is pending. |
| 2 | DMARXMIS | R | 0h | Receive DMA Interrupt Status This bit is cleared by writing a 1 to the DMARXIC bit in the I2CMICR register. 0h = No interrupt. 1h = An unmasked receive DMA complete interrupt was signaled and is pending. |
| 1 | CLKMIS | R | 0h | Clock Timeout Masked Interrupt Status This bit is cleared by writing a 1 to the CLKIC bit in the I2CMICR register. 0h = No interrupt. 1h = An unmasked clock timeout interrupt was signaled and is pending. |
| 0 | MIS | R | 0h | Clock Timeout Masked Interrupt Status This bit is cleared by writing a 1 to the CLKIC bit in the I2CMICR register. 0h = No interrupt. 1h = An unmasked clock timeout interrupt was signaled and is pending. |
I2CMICR is shown in Figure 7-21 and described in Table 7-12.
Return to Summary Table.
This register clears the raw and masked interrupts.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | RXFFIC | TXFEIC | RXIC | TXIC | |||
| R-0h | W-0h | W-0h | W-0h | W-0h | |||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| ARBLOSTIC | STOPIC | STARTIC | NACKIC | DMATXIC | DMARXIC | CLKCIC | IC |
| W-0h | W-0h | W-0h | W-0h | W-0h | W-0h | W-0h | W-0h |
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-12 | RESERVED | R | 0h | |
| 11 | RXFFIC | W | 0h | Receive FIFO Full Interrupt Clear Writing a 1 to this bit clears the RXFFIS bit in the I2CMRIS register and the RXFFMIS bit in the I2CMMIS register. A read of this register returns no meaningful data. |
| 10 | TXFEIC | W | 0h | Transmit FIFO Empty Interrupt Clear Writing a 1 to this bit clears the TXFERIS bit in the I2CMRIS register and the TXFEMIS bit in the I2CMMIS register. A read of this register returns no meaningful data. |
| 9 | RXIC | W | 0h | Receive FIFO Request Interrupt Clear Writing a 1 to this bit clears the RXRIS bit in the I2CMRIS register and the RXMIS bit in the I2CMMIS register. A read of this register returns no meaningful data. |
| 8 | TXIC | W | 0h | Transmit FIFO Request Interrupt Clear Writing a 1 to this bit clears the TXRIS bit in the I2CMRIS register and the TXMIS bit in the I2CMMIS register. A read of this register returns no meaningful data. |
| 7 | ARBLOSTIC | W | 0h | Arbitration Lost Interrupt Clear Writing a 1 to this bit clears the ARBLOSTRIS bit in the I2CMRIS register and the ARBLOSTMIS bit in the I2CMMIS register. A read of this register returns no meaningful data. |
| 6 | STOPIC | W | 0h | STOP Detection Interrupt Clear Writing a 1 to this bit clears the STOPRIS bit in the I2CMRIS register and the STOPMIS bit in the I2CMMIS register. A read of this register returns no meaningful data. |
| 5 | STARTIC | W | 0h | START Detection Interrupt Clear Writing a 1 to this bit clears the STARTRIS bit in the I2CMRIS register and the STARTMIS bit in the I2CMMIS register. A read of this register returns no meaningful data. |
| 4 | NACKIC | W | 0h | Address/Data NACK Interrupt Clear Writing a 1 to this bit clears the NACKRIS bit in the I2CMRIS register and the NACKMIS bit in the I2CMMIS register. A read of this register returns no meaningful data. |
| 3 | DMATXIC | W | 0h | Transmit DMA Interrupt Clear Writing a 1 to this bit clears the DMATXRIS bit in the I2CMRIS register and the DMATXMIS bit in the I2CMMIS register. A read of this register returns no meaningful data. |
| 2 | DMARXIC | W | 0h | Receive DMA Interrupt Clear Writing a 1 to this bit clears the DMARXRIS bit in the I2CMRIS register and the DMARXMIS bit in the I2CMMIS register. A read of this register returns no meaningful data. |
| 1 | CLKCIC | W | 0h | Clock Timeout Interrupt Clear Writing a 1 to this bit clears the CLKRIS bit in the I2CMRIS register and the CLKMIS bit in the I2CMMIS register. A read of this register returns no meaningful data. |
| 0 | IC | W | 0h | Master Interrupt Clear Writing a 1 to this bit clears the RIS bit in the I2CMRIS register and the MIS bit in the I2CMMIS register. A read of this register returns no meaningful data. |
I2CMCR is shown in Figure 7-22 and described in Table 7-13.
Return to Summary Table.
This register configures the mode (master or slave), and sets the interface for test mode loopback.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | SFE | MFE | RESERVED | LPBK | |||
| R-0h | R/W-0h | R/W-0h | R-0h | R/W-0h | |||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-6 | RESERVED | R | 0h | |
| 5 | SFE | R/W | 0h | I2C Slave Function Enable 0h = Slave mode is disabled. 1h = Slave mode is enabled. |
| 4 | MFE | R/W | 0h | I2C Master Function Enable 0h = Master mode is disabled. 1h = Master mode is enabled. |
| 3-1 | RESERVED | R | 0h | |
| 0 | LPBK | R/W | 0h | I2C Loopback 0h = Normal operation. 1h = The controller in a test mode loopback configuration. |
I2CMCLKOCNT is shown in Figure 7-23 and described in Table 7-14.
Return to Summary Table.
This register contains the upper 8 bits of a 12-bit counter that can be used to keep the timeout limit for clock stretching by a remote slave. The lower four bits of the counter are not user visible and are always 0x0.
The master clock low timeout counter counts for the entire time SCL is held Low continuously. If SCL is de-asserted at any point, the master clock low timeout counter is reloaded with the value in the I2CMCLKOCNT register and begins counting down from this value.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | CNTL | ||||||||||||||||||||||||||||||
| R-0h | R/W-0h | ||||||||||||||||||||||||||||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-8 | RESERVED | R | 0h | |
| 7-0 | CNTL | R/W | 0h | I2C Master Count This field contains the upper 8 bits of a 12-bit counter for the clock low timeout count. Note: The value of CNTL must be greater than 0x1. |
I2CMBMON is shown in Figure 7-24 and described in Table 7-15.
Return to Summary Table.
This register is used to determine the SCL and SDA signal status.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||||||||||
| R-0h | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | SDA | SCL | |||||||||||||
| R-0h | R-1h | R-1h | |||||||||||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-2 | RESERVED | R | 0h | |
| 1 | SDA | R | 1h | I2C SDA Status 0h = The I2CSDA signal is low. 1h = The I2CSDA signal is high. |
| 0 | SCL | R | 1h | I2C SCL Status 0h = The I2CSCL signal is low. 1h = The I2CSCL signal is high. |
I2CMBLEN is shown in Figure 7-25 and described in Table 7-16.
Return to Summary Table.
This register contains the programmed length of bytes that are transferred during a burst request.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | CNTL | ||||||||||||||||||||||||||||||
| R-0h | R/W-0h | ||||||||||||||||||||||||||||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-8 | RESERVED | R | 0h | |
| 7-0 | CNTL | R/W | 0h | I2C Burst Length This field contains the programmed length of bytes of the burst transaction. If BURST is enabled, this register must be set to a non-zero value, otherwise an error will occur. |
I2CMBCNT is shown in Figure 7-26 and described in Table 7-17.
Return to Summary Table.
When BURST is active, the value in the I2CMBLEN register is copied into this register and decremented during the BURST transaction. This register can be used to determine the number of transfers that occurred when a BURST terminates early (as a result of a data NACK). When a BURST completes successfully, this register will contain 0.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | CNTL | ||||||||||||||||||||||||||||||
| R-0h | Ro-0h | ||||||||||||||||||||||||||||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-8 | RESERVED | R | 0h | |
| 7-0 | CNTL | Ro | 0h | I2C Master Burst Count This field contains the current count-down value of the BURST transaction. |
I2CSOAR is shown in Figure 7-27 and described in Table 7-18.
Return to Summary Table.
This register consists of seven address bits that identify the TM4E111BE6ZRB I2C device on the I2C bus.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | OAR | ||||||||||||||||||||||||||||||
| R-0h | R/W-0h | ||||||||||||||||||||||||||||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-7 | RESERVED | R | 0h | |
| 6-0 | OAR | R/W | 0h | I2C Slave Own Address This field specifies bits A6 through A0 of the slave address. |
I2CSCSR is shown in Figure 7-28 and described in Table 7-19.
Return to Summary Table.
This register functions as a control register when written, and a status register when read.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| ACTDMARX | ACTDMATX | RESERVED | |||||
| R-0h | R-0h | R-0h | |||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | QCMDRW | QCMDST | OAR2SEL | FBR_OR_RXFIFO | TREQ_OR_TXFIFO | RREQ_OR_DA | |
| R-0h | RC-0h | RC-0h | RO-0h | R/W-0h | R/W-0h | R/W-0h | |
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31 | ACTDMARX | R | 0h | DMA RX Active Status 0h (R) = DMA RX is not active 1h (R) = DMA RX is active. |
| 30 | ACTDMATX | R | 0h | DMA RX Active Status 0h (R) = DMA RX is not active 1h (R) = DMA RX is active. |
| 29-6 | RESERVED | R | 0h | |
| 5 | QCMDRW | RC | 0h | Quick Command Read / Write This bit only has meaning when the QCMDST bit is set. 0h (R) = Quick command was a write 1h (R) = Quick command was a read |
| 4 | QCMDST | RC | 0h | Quick Command Status 0h (R) = The last transaction was a normal transaction or a transaction has not occurred. 1h (R) = The last transaction was a Quick Command transaction. |
| 3 | OAR2SEL | RO | 0h | OAR2 Address Matched This bit is reevaluated after every address comparison. 0h (R) = Either the address is not matched or the match is in legacy mode. 1h (R) = OAR2 address matched and ACKed by the slave. |
| 2 | FBR_OR_RXFIFO | R/W | 0h | First Byte Received (R) or RX FIFO Enable This bit is only valid when the RREQ bit is set and is automatically cleared when data has been read from the I2CSDR register. 0h (W) = Disables RX FIFO 0h (R) = The first byte has not been received. 1h (W) = Enables RX FIFO 1h (R) = The first byte following the slave s own address has been received. Note: This bit is not used for slave transmit operations. |
| 1 | TREQ_OR_TXFIFO | R/W | 0h | Transmit Request (R) or TX FIFO Enable (W) 0h (W) = Disables TX FIFO 0h (R) = No outstanding transmit request. 1h (W) = Enables TX FIFO 1h (R) = The I2C controller has been addressed as a slave transmitter and is using clock stretching to delay the master until data has been written to the I2CSDR register. |
| 0 | RREQ_OR_DA | R/W | 0h | Receive Request (R) or Device Active (W) Once this bit has been set, it should not be set again unless it has been cleared by writing a 0 or by a reset, otherwise transfer failures may occur. 0h (W) = Disables the I2C slave operation. 0h (R) = No outstanding receive data. 1h (W) = Enables the I2C slave operation. 1h (R) = The I2C controller has outstanding receive data from the I2C master and is using clock stretching to delay the master until the data has been read from the I2CSDR register. |
I2CSDR is shown in Figure 7-29 and described in Table 7-20.
Return to Summary Table.
This register is read-sensitive. See the register description for details.
This register contains the data to be transmitted when in the slave transmit state, and the data received when in the slave receive state. If the RXFIFO bit or TXFIFO bit are enabled in the I2CSCSR register, then this register is ignored and the data value being transferred from the FIFO is contained in the I2CFIFODATA register.
Best practice recommends that an application should not switch between the I2CSDR register and TX FIFO, or vice versa for successive transactions.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | DATA | ||||||||||||||||||||||||||||||
| R-0h | R/W-0h | ||||||||||||||||||||||||||||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-8 | RESERVED | R | 0h | |
| 7-0 | DATA | R/W | 0h | Data for Transfer This field contains the data for transfer during a slave receive or transmit operation. |
I2CSIMR is shown in Figure 7-30 and described in Table 7-21.
Return to Summary Table.
This register controls whether a raw interrupt is promoted to a controller interrupt.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | RXFFIM | ||||||
| R-0h | R/W-0h | ||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| TXFEIM | RXIM | TXIM | DMATXIM | DMARXIM | STOPIM | STARTIM | DATAIM |
| R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h |
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-9 | RESERVED | R | 0h | |
| 8 | RXFFIM | R/W | 0h | Receive FIFO Full Interrupt Mask 0h = The RXFFRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The Receive FIFO Full interrupt is sent to the interrupt controller when the RXFFRIS bit in the I2CSRIS register is set. |
| 7 | TXFEIM | R/W | 0h | Transmit FIFO Empty Interrupt Mask 0h = The TXFERIS interrupt is suppressed and not sent to the interrupt controller. 1h = The Transmit FIFO Empty interrupt is sent to the interrupt controller when the TXFERIS bit in the I2CSRIS register is set. |
| 6 | RXIM | R/W | 0h | Receive FIFO Request Interrupt Mask 0h = The RXRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The RX FIFO Request interrupt is sent to the interrupt controller when the RXRIS bit in the I2CSRIS register is set. |
| 5 | TXIM | R/W | 0h | Transmit FIFO Request Interrupt 0h = The TXRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The TX FIFO Request interrupt is sent to the interrupt controller when the TXRIS bit in the I2CSRIS register is set. |
| 4 | DMATXIM | R/W | 0h | Transmit DMA Interrupt Mask 0h = The DMATXRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The transmit DMA complete interrupt is sent to the interrupt controller when the DMATXRIS bit in the I2CSRIS register is set. |
| 3 | DMARXIM | R/W | 0h | Receive DMA Interrupt Mask 0h = The DMARXRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The receive DMA complete interrupt is sent to the interrupt controller when the DMARXRIS bit in the I2CSRIS register is set. |
| 2 | STOPIM | R/W | 0h | Stop Condition Interrupt Mask 0h = The STOPRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The STOP condition interrupt is sent to the interrupt controller when the STOPRIS bit in the I2CSRIS register is set. |
| 1 | STARTIM | R/W | 0h | Start Condition Interrupt Mask 0h = The STARTRIS interrupt is suppressed and not sent to the interrupt controller. 1h = The START condition interrupt is sent to the interrupt controller when the STARTRIS bit in the I2CSRIS register is set. |
| 0 | DATAIM | R/W | 0h | Data Interrupt Mask 0h = The DATARIS interrupt is suppressed and not sent to the interrupt controller. 1h = Data interrupt sent to interrupt controller when DATARIS bit in the I2CSRIS register is set. |
I2CSRIS is shown in Figure 7-31 and described in Table 7-22.
Return to Summary Table.
This register specifies whether an interrupt is pending.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | RXFFRIS | ||||||
| R-0h | R-0h | ||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| TXFERIS | RXRIS | TXRIS | DMATXRIS | DMARXRIS | STOPRIS | STARTRIS | DATARIS |
| R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h |
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-9 | RESERVED | R | 0h | |
| 8 | RXFFRIS | R | 0h | Receive FIFO Full Raw Interrupt Status This bit is cleared by writing a 1 to the RXFFIC bit in the I2CSICR register. 0h = No interrupt 1h = The Receive FIFO Full interrupt is pending. |
| 7 | TXFERIS | R | 0h | Transmit FIFO Empty Raw Interrupt Status This bit is cleared by writing a 1 to the TXFEIC bit in the I2CSICR register. 0h = No interrupt 1h = The Transmit FIFO Empty interrupt is pending. Note that if the TXFERIS interrupt is cleared (by setting the TXFEIC bit) when the TX FIFO is empty, the TXFERIS interrupt does not reassert even though the TX FIFO remains empty in this situation. |
| 6 | RXRIS | R | 0h | Receive FIFO Request Raw Interrupt Status This bit is cleared by writing a 1 to the RXIC bit in the I2CSICR register. 0h = No interrupt 1h = The trigger value for the FIFO has been reached and a RX FIFO Request interrupt is pending. |
| 5 | TXRIS | R | 0h | Receive FIFO Request Raw Interrupt Status This bit is cleared by writing a 1 to the RXIC bit in the I2CSICR register. 0h = No interrupt 1h = The trigger value for the FIFO has been reached and a RX FIFO Request interrupt is pending. |
| 4 | DMATXRIS | R | 0h | Transmit DMA Raw Interrupt Status This bit is cleared by writing a 1 to the DMATXIC bit in the I2CSICR register. 0h = No interrupt 1h = A transmit DMA complete interrupt is pending. |
| 3 | DMARXRIS | R | 0h | Receive DMA Raw Interrupt Status This bit is cleared by writing a 1 to the DMARXIC bit in the I2CSICR register. 0h = No interrupt 1h = A receive DMA complete interrupt is pending. |
| 2 | STOPRIS | R | 0h | Stop Condition Raw Interrupt Status This bit is cleared by writing a 1 to the STOPIC bit in the I2CSICR register. 0h = No interrupt 1h = A STOP condition interrupt is pending. |
| 1 | STARTRIS | R | 0h | Start Condition Raw Interrupt Status This bit is cleared by writing a 1 to the STARTIC bit in the I2CSICR register. 0h = No interrupt. 1h = A START condition interrupt is pending. |
| 0 | DATARIS | R | 0h | Data Raw Interrupt Status This interrupt encompasses the following:
This bit is cleared by writing a 1 to the DATAIC bit in the I2CSICR register. 0h = No interrupt. 1h = Slave Interrupt is pending. |
I2CSMIS is shown in Figure 7-32 and described in Table 7-23.
Return to Summary Table.
This register specifies whether an interrupt was signaled.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | RXFFMIS | ||||||
| R-0h | R-0h | ||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| TXFEMIS | RXMIS | TXMIS | DMATXMIS | DMARXMIS | STOPMIS | STARTMIS | DATAMIS |
| R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h |
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-9 | RESERVED | R | 0h | |
| 8 | RXFFMIS | R | 0h | Receive FIFO Full Interrupt Mask This bit is cleared by writing a 1 to the RXFFIC bit in the I2CSICR register. 0h = No interrupt. 1h = An unmasked Receive FIFO Full interrupt was signaled and is pending. |
| 7 | TXFEMIS | R | 0h | Transmit FIFO Empty Interrupt Mask This bit is cleared by writing a 1 to the TXFEIC bit in the I2CSICR register. 0h = No interrupt. 1h = An unmasked Transmit FIFO Empty interrupt was signaled and is pending. |
| 6 | RXMIS | R | 0h | Receive FIFO Request Interrupt Mask This bit is cleared by writing a 1 to the RXIC bit in the I2CSICR register. 0h = No interrupt. 1h = An unmasked Receive FIFO Request interrupt was signaled and is pending. |
| 5 | TXMIS | R | 0h | Transmit FIFO Request Interrupt Mask This bit is cleared by writing a 1 to the TXIC bit in the I2CSICR register. 0h = No interrupt. 1h = An unmasked Transmit FIFO Request interrupt was signaled and is pending. |
| 4 | DMATXMIS | R | 0h | Transmit DMA Masked Interrupt Status This bit is cleared by writing a 1 to the DMATXIC bit in the I2CSICR register. 0h = An interrupt has not occurred or is masked. 1h = An unmasked transmit DMA complete interrupt was signaled is pending. |
| 3 | DMARXMIS | R | 0h | Receive DMA Masked Interrupt Status This bit is cleared by writing a 1 to the DMARXIC bit in the I2CSICR register. 0h = An interrupt has not occurred or is masked. 1h = An unmasked receive DMA complete interrupt was signaled is pending. |
| 2 | STOPMIS | R | 0h | Stop Condition Masked Interrupt Status This bit is cleared by writing a 1 to the STOPIC bit in the I2CSICR register. 0h = An interrupt has not occurred or is masked. 1h = An unmasked STOP condition interrupt was signaled is pending. |
| 1 | STARTMIS | R | 0h | Start Condition Masked Interrupt Status This bit is cleared by writing a 1 to the STARTIC bit in the I2CSICR register. 0h = An interrupt has not occurred or is masked. 1h = An unmasked START condition interrupt was signaled is pending. |
| 0 | DATAMIS | R | 0h | Data Masked Interrupt Status This bit is cleared by writing a 1 to the DATAIC bit in the I2CSICR register. 0h = An interrupt has not occurred or is masked. 1h = An unmasked slave data interrupt was signaled is pending. |
I2CSICR is shown in Figure 7-33 and described in Table 7-24.
Return to Summary Table.
This register clears the raw interrupt. A read of this register returns no meaningful data.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | RXFFIC | ||||||
| R-0h | W-0h | ||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| TXFEIC | RXIC | TXIC | DMATXIC | DMARXIC | STOPIC | STARTIC | DATAIC |
| W-0h | W-0h | W-0h | W-0h | W-0h | W-0h | W-0h | W-0h |
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-9 | RESERVED | R | 0h | |
| 8 | RXFFIC | W | 0h | Receive FIFO Full Interrupt Mask Writing a 1 to this bit clears the RXFFIS bit in the I2CSRIS register and the RXFFMIS bit in the I2CSMIS register. A read of this register returns no meaningful data. |
| 7 | TXFEIC | W | 0h | Transmit FIFO Empty Interrupt Mask Writing a 1 to this bit clears the TXFERIS bit in the I2CSRIS register and the TXFEMIS bit in the I2CSMIS register. A read of this register returns no meaningful data. |
| 6 | RXIC | W | 0h | Receive Request Interrupt Mask Writing a 1 to this bit clears the RXRIS bit in the I2CSRIS register and the RXMIS bit in the I2CSMIS register. A read of this register returns no meaningful data. |
| 5 | TXIC | W | 0h | Transmit Request Interrupt Mask Writing a 1 to this bit clears the TXRIS bit in the I2CSRIS register and the TXMIS bit in the I2CSMIS register. A read of this register returns no meaningful data. |
| 4 | DMATXIC | W | 0h | Transmit DMA Interrupt Clear Writing a 1 to this bit clears the DMATXRIS bit in the I2CSRIS register and the DMATXMIS bit in the I2CSMIS register. A read of this register returns no meaningful data. |
| 3 | DMARXIC | W | 0h | Receive DMA Interrupt Clear Writing a 1 to this bit clears the DMARXRIS bit in the I2CSRIS register and the DMARXMIS bit in the I2CSMIS register. A read of this register returns no meaningful data. |
| 2 | STOPIC | W | 0h | Receive DMA Interrupt Clear Writing a 1 to this bit clears the DMARXRIS bit in the I2CSRIS register and the DMARXMIS bit in the I2CSMIS register. A read of this register returns no meaningful data. |
| 1 | STARTIC | W | 0h | Start Condition Interrupt Clear Writing a 1 to this bit clears the STARTRIS bit in the I2CSRIS register and the STARTMIS bit in the I2CSMIS register. A read of this register returns no meaningful data. |
| 0 | DATAIC | W | 0h | Start Condition Interrupt Clear Writing a 1 to this bit clears the STARTRIS bit in the I2CSRIS register and the STARTMIS bit in the I2CSMIS register. A read of this register returns no meaningful data. |
I2CSOAR2 is shown in Figure 7-34 and described in Table 7-25.
Return to Summary Table.
This register consists of seven address bits that identify the alternate address for the I2C device on the I2C bus.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| OAR2EN | OAR2 | ||||||
| R/W-0h | R/W-0h | ||||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-8 | RESERVED | R | 0h | |
| 7 | OAR2EN | R/W | 0h | I2C Slave Own Address 2 Enable 0h = The alternate address is disabled. 1h = Enables the use of the alternate address in the OAR2 field. |
| 6-0 | OAR2 | R/W | 0h | I2C Slave Own Address 2 This field specifies the alternate OAR2 address. |
I2CSACKCTL is shown in Figure 7-35 and described in Table 7-26.
Return to Summary Table.
This register enables the I2C slave to NACK for invalid data or command or ACK for valid data or command. The I2C clock is pulled low after the last data bit until this register is written.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | ACKOVAL | ACKOEN | |||||
| R-0h | R/W-0h | R/W-0h | |||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-2 | RESERVED | R | 0h | |
| 1 | ACKOVAL | R/W | 0h | I2C Slave ACK Override Value 0h = An ACK is sent indicating valid data or command. 1h = A NACK is sent indicating invalid data or command. |
| 0 | ACKOEN | R/W | 0h | I2C Slave ACK Override Enable 0h = A response in not provided. 1h = An ACK or NACK is sent according to the value written to the ACKOVAL bit. |
I2CFIFODATA is shown in Figure 7-36 and described in Table 7-27.
Return to Summary Table.
The I2C FIFO Data (I2CFIFODATA) register contains the current value of the top of the RX or TX FIFO stack being used in the a transfer.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | DATA | ||||||||||||||||||||||||||||||
| R-0h | R/W-0h | ||||||||||||||||||||||||||||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-8 | RESERVED | R | 0h | |
| 7-0 | DATA | R/W | 0h | I2C RX FIFO Data Byte This field contains the current byte being read in the RX FIFO stack. This field contains the current byte written to the TX FIFO. For back to back transmit operations, the application should not switch between writing to the I2CSDR register and the I2CFIFODATA. |
I2CFIFOCTL is shown in Figure 7-37 and described in Table 7-28.
Return to Summary Table.
The FIFO Control register can be programmed to control various aspects of the FIFO transaction, such as RX and TX FIFO assignment, byte count value for FIFO triggers, and flushing of the FIFOs.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RXASGNMT | RXFLUSH | DMARXENA | RESERVED | ||||
| R/W-0h | R/W-0h | R/W-0h | R-0h | ||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | RXTRIG | ||||||
| R-0h | R/W-4h | ||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| TXASGNMT | TXFLUSH | DMATXENA | RESERVED | ||||
| R/W-0h | R/W-0h | R/W-0h | R-0h | ||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | TXTRIG | ||||||
| R-0h | R/W-4h | ||||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31 | RXASGNMT | R/W | 0h | RX Control Assignment 0h = RX FIFO is assigned to master 1h = RX FIFO is assigned to slave |
| 30 | RXFLUSH | R/W | 0h | RX FIFO Flush Setting this bit flushes the RX FIFO. This bit self-clears when the flush has completed. |
| 29 | DMARXENA | R/W | 0h | DMA RX Channel Enable 0h = DMA RX channel disabled 1h = DMA RX channel enabled |
| 28-19 | RESERVED | R | 0h | |
| 18-16 | RXTRIG | R/W | 4h | RX FIFO Trigger Indicates at what fill level the RX FIFO generates a trigger. 0h = Trigger when RX FIFO contains no bytes 1h = Trigger when Rx FIFO contains 1 or more bytes 2h = Trigger when Rx FIFO contains 2 or more bytes 3h = Trigger when Rx FIFO contains 3 or more bytes 4h = Trigger when Rx FIFO contains 4 or more bytes 5h = Trigger when Rx FIFO contains 5 or more bytes 6h = Trigger when Rx FIFO contains 6 or more bytes 7h = Trigger when Rx FIFO contains 7 or more bytes. Note: Programming RXTRIG to 0x0 has no effect since no data is present to transfer out of RX FIFO. |
| 15 | TXASGNMT | R/W | 0h | TX Control Assignment 0h = TX FIFO is assigned to Master 1h = TX FIFO is assigned to Slave |
| 14 | TXFLUSH | R/W | 0h | TX FIFO Flush Setting this bit flushes the TX FIFO. This bit self-clears when the flush has completed. |
| 13 | DMATXENA | R/W | 0h | DMA TX Channel Enable 0h = DMA TX channel disabled 1h = DMA TX channel enabled |
| 12-3 | RESERVED | R | 0h | |
| 2-0 | TXTRIG | R/W | 4h | TX FIFO Trigger Indicates at what fill level in the TX FIFO a trigger is generated. 0h = Trigger when the TX FIFO is empty. 1h = Trigger when TX FIFO contains 1 byte 2h = Trigger when TX FIFO contains 2 bytes 3h = Trigger when TX FIFO 3 bytes 4h = Trigger when TX FIFO 4 bytes 5h = Trigger when TX FIFO 5 bytes 6h = Trigger when TX FIFO 6 bytes 7h = Trigger when TX FIFO 7 bytes |
I2CFIFOSTATUS is shown in Figure 7-38 and described in Table 7-29.
Return to Summary Table.
This register contains the real-time status of the RX and TX FIFOs.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | RXABVTRIG | RXFF | RXFE | ||||
| R-0h | R-0h | R-0h | R-1h | ||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | TXBLWTRIG | TXFF | TXFE | ||||
| R-0h | R-1h | R-0h | R-1h | ||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-19 | RESERVED | R | 0h | |
| 18 | RXABVTRIG | R | 0h | RX FIFO Above Trigger Level 0h = The number of bytes in RX FIFO is below the trigger level programmed by the RXTRIG bit in the I2CFIFOCTL register 1h = The number of bytes in the RX FIFO is above the trigger level programmed by the RXTRIG bit in the I2CFIFOCTL register |
| 17 | RXFF | R | 0h | RX FIFO Full 0h = The RX FIFO is not full. 1h = The RX FIFO is full. |
| 16 | RXFE | R | 1h | RX FIFO Empty 0h = The RX FIFO is not empty. 1h = The RX FIFO is empty. |
| 15-3 | RESERVED | R | 0h | |
| 2 | TXBLWTRIG | R | 1h | TX FIFO Below Trigger Level 0h = The number of bytes in TX FIFO is above the trigger level programmed by the TXTRIG bit in the I2CFIFOCTL register 1h = The number of bytes in the TX FIFO is below the trigger level programmed by the TXTRIG bit in the I2CFIFOCTL register |
| 1 | TXFF | R | 0h | TX FIFO Full 0h = The TX FIFO is not full. 1h = The TX FIFO is full. |
| 0 | TXFE | R | 1h | TX FIFO Empty 0h = The TX FIFO is not empty. 1h = The TX FIFO is empty. |
I2CPP is shown in Figure 7-39 and described in Table 7-30.
Return to Summary Table.
The I2CPP register provides information regarding the properties of the I2C module.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||||||||||
| R-0h | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | HS | ||||||||||||||
| R-0h | R-1h | ||||||||||||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-1 | RESERVED | R | 0h | |
| 0 | HS | R | 1h | High-Speed Capable 0h = The interface is capable of standard or fast mode operation. 1h = Reserved |
I2CPC is shown in Figure 7-40 and described in Table 7-31.
Return to Summary Table.
The I2CPC register allows software to enable features present in the I2C module.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||||||||||
| R-0h | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | HS | ||||||||||||||
| R-0h | R-1h | ||||||||||||||
| LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-1 | RESERVED | R | 0h | |
| 0 | HS | R | 1h | High-Speed Capable 0h = The interface is capable of standard or fast mode operation. 1h = Reserved. Must be set to 0 |