
CHAPTER 15 SMB0 (
PD789167Y AND 789177Y SUBSERIES)
User’s Manual U14186EJ6V0UD
247
15.4.4 Acknowledge signal (ACK)
The acknowledge signal (ACK) is used to confirm reception of serial data on the transmitting and receiving sides.
On the receiving side, an acknowledge signal is returned each time 8 bits of data are received. On the sending
side, an acknowledge signal is normally received following transmission of 8 bits of data. However, when the master
is receiving, no acknowledge signal is output after the final data has been received. The transmitting side detects
whether an acknowledge signal is returned following transmission of 8 bits of data. If an acknowledge signal is
returned, processing is continued assuming that the data was successfully received. If no acknowledge signal is
returned by the slave, the master outputs a stop condition or a restart condition, and stops transmission.
An
acknowledge signal is not returned for the following two reasons.
<1> Reception was not performed normally.
<2> The final data was received.
If the receiving side sets the SDA0 line to low level at the 9th clock, the acknowledge signal becomes active
(normal reception response).
When SMB control register 0 (SMBC0) bit 2 (ACKE0) = 1, the acknowledge signal automatic generation enable
state is entered.
SMB status register 0 (SMBS0) bit 3 (TRC0) is set by the 8th bit following the 7-bit address. However, when the
TRC0 bit value is 0, receive status is selected, therefore set ACKE0 to 1.
During a slave receive operation (TRC0 = 0), if the slave side receives several bytes and does not require
subsequent data, ACKE0 can be set to 0 so that the master does not start the next transmission.
In the same way, if, during a master receive operation (TRC0 = 0), subsequent data is not required and you want
to output a restart condition or a stop condition, set ACKE0 to 0 so that no ACK signal is output. This must be done
so that the data’s MSB is not output to the SDA0 line during the slave transmission operation (transmission stop).
Figure 15-11. Acknowledge Signal
1
A6
SCL0
SDA0
A5
A4
A3
A2
A1
A0
R/W
2
345
678
9
ACK
When a slave receives a local address, it automatically outputs an acknowledge signal in synchronization with the
falling edge of the 8th clock of SCL0, regardless of the value of ACKE0. If a slave receives other than a local
address, no acknowledge signal is output.
The acknowledge signal output method during data reception depends on the wait timing setting, as follows.
8-clock wait: Acknowledge signal is output when the value of ACKE0 becomes 1 before wait cancellation is
performed.
9-clock wait: Acknowledge signal is automatically output in synchronization with the falling edge of the 8th clock
of SCL0 by setting ACKE0 to 1 beforehand.