RL78/G15 CHAPTER 13 SERIAL INTERFACE IICA
R01UH0959EJ0110 Rev.1.10 Page 560 of 765
Mar 7, 2023
(3) Slave operation
The processing procedure of slave operation is as follows.
Basically, slave operation is event-driven. This requires processing by the INTIICA0 interrupt (processing that requires
substantially changing the operation state such as detection of a stop condition during communication).
In the following explanation, it is assumed that the extension code is not supported for data communication. It is also
assumed that the INTIICA0 interrupt servicing only performs processing for state transition and actual data
communication is performed by the main processing.
IICA
Main processing
Interrupt servicing
INTIICA0 Flag
Settings
Data
Settings
Therefore, data communication processing is performed by preparing the following three flags and passing them to the
main processing instead of INTIICA0.
<1> Communication mode flag
This flag indicates the following two communication states.
●
Clear mode: State in which data communication is not performed
●
Communication mode: State in which data communication is performed (from valid address detection to stop
condition detection, no detection of ACK from master, address mismatch)
<2> Ready flag
This flag indicates that data communication is enabled. Its function is the same as the INTIICA0 interrupt in
ordinary data communications. This flag is set by interrupt servicing and cleared by the main processing. Clear
this flag by interrupt servicing when communication is started. However, the ready flag is not set by interrupt
servicing when the first data is transmitted. Therefore, the first data is transmitted without the flag being cleared
(an address match is interpreted as a request for the next data).
<3> Communication direction flag
This flag indicates the direction of communication. Its value is the same as the TRC0 bit.