TMP91C824
91C824-164
SCL line
Start condtion
A6
Slave address
+
derection bit
Acknowledge
signal from a
slave device
1
SDA line
2
3
4
5
6
7
8
9
A5
A4
A3
A2
A1
A0
W
R/
<PIN>
INTS2
interrupt request
ACK
output of Master
output of Slave
Figure 3.10.13
Start Condition Generation and Slave Address Transfer
(3) 1-word Data Transfer
Check the <MST> by the INTS2 interrupt process after the 1-word data transfer is completed,
and determine whether the mode is a master or slave.
!
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
<BC2 to BC0> <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 INTS2 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 one word in length, repeat the procedure from the <LRB> checking above.
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>
INTS2
interrupt request
ACK
Output from Master
Output from Slave
D0
Write to SBI0DBR
Figure 3.10.14
Example in which <BC2 to BC0> = “000” and <ACK> = “1” in Transmitter Mode