I2C Registers
1337
SLAU723A – October 2017 – Revised October 2018
Copyright © 2017–2018, Texas Instruments Incorporated
Inter-Integrated Circuit (I
2
C) Interface
19.5.2 I2CMCS Register (Offset = 0x4) [reset = 0x20]
I2C Master Control/Status (I2CMCS)
This register accesses status bits when read and control bits when written. When read, the status register
indicates the state of the I
2
C bus controller. When written, the control register configures the I
2
C controller
operation.
The START bit generates the START or repeated START condition. The STOP bit determines if the cycle
stops at the end of the data cycle or continues to the next transfer cycle, which could be a repeated
START. To generate a single transmit cycle, the I2CMSA register is written with the desired address, the
R/S bit is cleared, and this register is written with ACK = X (0 or 1), STOP = 1, START = 1, and RUN = 1
to perform the operation and stop. When the operation is completed (or aborted due an error), an interrupt
becomes active and the data may be read from the I2CMDR register. When the I
2
C module operates in
master receiver mode, the ACK bit is normally set, causing the I
2
C bus controller to transmit an
acknowledge automatically after each byte. This bit must be cleared when the I
2
C bus controller requires
no further data to be transmitted from the slave transmitter.
NOTE:
After the CPU starts a transaction, up to 60% of the I
2
C clock period is required before the
BUSY bit is set. Therefore, a delay is required before reading this bit.
NOTE:
When reading the I2CMCS register to check the BUSY bit, also read the ADRACK and
DATACK bits, because these are cleared on register read, and status may be lost if they are
not checked on every read of the register.
Alternatively, the NACKRIS bit of the I2CMRIS register can be used to monitor NACK status.
I2CMCS as a read-only status register is shown in
and described in
I2CMCS as a write-only control register is shown in
and described in
.
Return to
Figure 19-17. I2CMCS Register — Read-Only Status Register
31
30
29
28
27
26
25
24
ACTDMARX
ACTDMATX
RESERVED
R-0x0
R-0x0
R-0x0
23
22
21
20
19
18
17
16
RESERVED
R-0x0
15
14
13
12
11
10
9
8
RESERVED
R-0x0
7
6
5
4
3
2
1
0
CLKTO
BUSBSY
IDLE
ARBLST
DATACK
ADRACK
ERROR
BUSY
R-0x0
R-0x0
R-0x1
R-0x0
R-0x0
R-0x0
R-0x0
R-0x0
Table 19-6. I2CMCS Register Field Descriptions — Read-Only Status Register
Bit
Field
Type
Reset
Description
31
ACTDMARX
R
0x0
DMA RX Active Status.
0x0 = DMA RX is not active
0x1 = DMA RX is active.
30
ACTDMATX
R
0x0
DMA TX Active Status.
0x0 = DMA TX is not active
0x1 = DMA TX is active.
29-8
RESERVED
R
0x0