15. USI
A96G140/A96G148/A96A148 User’s manual
172
Figure 95. START and STOP Condition (USIn)
15.16
USIn I2C data transfer
Every byte put on the SDAn line must be 8-bits long. The number of bytes that can be transmitted per
transfer is unlimited. Each byte has to be followed by an acknowledge bit. Data is transferred with the
most significant bit (MSB) first. If a slave can’t receive or transmit another complete byte of data until it
has performed some other function, it can hold the clock line SCLn LOW to force the master into a wait
state. Data transfer then continues when the slave is ready for another byte of data and releases clock
line SCLn.
Figure 96. Data Transfer on the I2C-Bus (USIn)
15.17
USIn I2C acknowledge
The acknowledge related clock pulse is generated by the master. The transmitter releases the SDAn
line (HIGH) during the acknowledge clock pulse. The receiver must pull down the SDAn line during the
acknowledge clock pulse so that it remains stable LOW during the HIGH period of this clock pulse.
When a slave is addressed by a master (Address Packet), and if it is unable to receive or transmit
because it’s performing some real time function, the data line must be left HIGH
by the slave. And also,
when a slave addressed by a master is unable to receive more data bits, the slave receiver must release
the SDAn line (Data Packet).
SCLn
SDAn
START Condition
S
P
STOP Condition
START or Repeated
START Condition
S or
Sr
STOP or Repeated
START Condition
Sr or
P
MSB
Acknowledgement Signal
form Slave
Acknowledgement Signal
form Slave
Byte Complete,
Interrupt within Device
Clock line held low while
interrupts are served.
1
9
1
9
ACK
ACK
SDAn
SCLn
Sr
P