![Texas Instruments SimpleLink Ethernet MSP432E401Y Скачать руководство пользователя страница 1316](http://html1.mh-extra.com/html/texas-instruments/simplelink-ethernet-msp432e401y/simplelink-ethernet-msp432e401y_technical-reference-manual_10955781316.webp)
START
condition
SCL
SDA
STOP
condition
SCL
SDA
R
PUP
MSP432E4
Microcontroller
I2CSCL
I2CSDA
Third-party device
with I
2
C interface
SCL
SDA
I
2
C Bus
SCL
SDA
SCL
SDA
Third-party device
with I
2
C interface
R
PUP
Functional Description
1316
SLAU723A – October 2017 – Revised October 2018
Copyright © 2017–2018, Texas Instruments Incorporated
Inter-Integrated Circuit (I
2
C) Interface
Figure 19-2. I
2
C Bus Configuration
19.3.1 I
2
C Bus Functional Overview
The I
2
C bus uses only two signals: SDA and SCL (named I2CSDA and I2CSCL on MSP432E4
microcontrollers). SDA is the bidirectional SDA and SCL is the bidirectional serial clock line. The bus is
considered idle when both lines are high.
Every transaction on the I
2
C bus is nine bits long, consisting of eight data bits and a single acknowledge
bit. The number of bytes per transfer (defined as the time between a valid START and STOP condition,
described in
) is unrestricted, but each data byte must be followed by an acknowledge bit,
and data must be transferred MSB first. When a receiver cannot receive another complete byte, it can
hold the clock line SCL low and force the transmitter into a wait state. The data transfer continues when
the receiver releases the clock SCL.
19.3.1.1 START and STOP Conditions
The protocol of the I
2
C bus defines two states to begin and end a transaction: START and STOP. A high-
to-low transition on the SDA line while the SCL is high is defined as a START condition, and a low-to-high
transition on the SDA line while SCL is high is defined as a STOP condition. The bus is considered busy
after a START condition and free after a STOP condition. See
Figure 19-3. START and STOP Conditions
The STOP bit determines if the cycle stops at the end of the data cycle or continues on to a repeated
START condition. To generate a single transmit cycle, the I
2
C Master Slave Address (I2CMSA) register is
written with the desired address, the R/S bit is cleared, and the Control 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), the interrupt pin becomes active and the data may be read from the
I
2
C Master Data (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.
When operating in slave mode, the STARTRIS and STOPRIS bits in the I
2
C Slave Raw Interrupt Status
(I2CSRIS) register indicate detection of start and stop conditions on the bus and the I
2
C Slave Masked
Interrupt Status (I2CSMIS) register can be configured to allow STARTRIS and STOPRIS to be promoted
to controller interrupts (when interrupts are enabled).