TMP91C824
91C824-167
2008-02-20
(3)
1-word data transfer
Check the <MST> by the INTSBI interrupt process after the 1-word data transfer
is completed, and determine whether the mode is a master or slave.
a. If
<MST>
=
1 (Master mode)
Check the <TRX> and determine whether the mode is a transmitter or receiver.
When the <TRX>
=
1 (Transmitter mode)
Check the <LRB>. When <LRB> is 1, a receiver does not request data.
Implement the process to generate a stop condition (Refer to 3.10.6 (4)) and
terminate data transfer.
When the <LRB> is 0, the receiver is requests new data. When the next
transmitted data is 8 bits, write the transmitted data to SBI0DBR. When the
next transmitted data is other than 8 bits, set the BC<2:0> <ACK> and write the
transmitted data to SBI0DBR. After written the data, <PIN> becomes 1, a serial
clock pulse is generated for transferring a new 1 word of data from the SCL pin,
and then the 1-word data is transmitted. After the data is transmitted, an
INTSBI interrupt request occurs. The <PIN> becomes 0 and the SCL line is
pulled down to the low level. If the data to be transferred is more than 1 word in
length, repeat the procedure from the <LRB> checking above.
Figure 3.10.14 Example in which BC<2:0>
=
000 and <ACK>
=
1 in Transmitter Mode
SCL line
D7
Acknowledge signal
from a receive
1
SDA line
2
3
4
5
6
7
8
9
D6 D5 D4
D3
D2
D1
<PIN>
INTSBI
interrupt request
ACK
Output from master
Output from slave
D0
Write to SBI0DBR