122
CHAPTER 5. PERIPHERAL HARDWARE FUNCTIONS
After the slave receives the data length, if the area for storing the receive data is at least as large as
that data length, the slave returns ACK. If the data storage area is too small, ACK is not returned and an
error is generated.
When all the data has been transferred, the master sends an END command. This command notifies
the slave that all the data has been correctly transferred.
The slave may also receive an END command before the reception of all the data. In this case, the data
up to the reception of the END command is valid.
When data is transmitted, the master compares the SIO contents before and after the transmission
to check whether the data was correctly output onto the bus. If the SIO contents before and after the
transmission are different, the master suspends data transmission by sending a STOP command.
Fig. 5-56 STOP Command Transfer Format
Data
M
Data
ACK
S
STOP
M
Command
ACK
S
Data Transfer Suspended
Data Check 
Error Generation
Remarks M : Output by master
S : Output by slave
When the slave receives a STOP command, the byte of data received immediately before the command
is invalid.