RL78/G1A CHAPTER 12 SERIAL ARRAY UNIT
R01UH0305EJ0200 Rev.2.00 476
Jul 04, 2013
Figure 12-55. Flowchart of Slave Transmission (in Continuous Transmission Mode)
Setting transmit data
Write 1 to STmn bit
For the initial setting, see Figure 12-50.
(Select buffer empty interrupt)
SAU default setting
Yes
No
No
End of communication
Yes
No
Communication continued?
Yes
Number of transmit
data > 1?
<2>
<3>
<4>
<5>
<6>
<1>
Set storage area and the number of data for transmit data
(Storage area, Transmission data pointer, Number of communication data and
Communication end flag are optionally set on the internal RAM by the software)
Clear MDmn0 bit to 0
Writing transmit data to
SIOp (=SDRmn[7:0])
Writing transmit data to
SIOp (=SDRmn[7:0])
Reading transmit data
If transmit data is left, read them from storage area then write into
SIOp, and update transmit data pointer.
If not, change the interrupt to transmission complete
Subtract -1 from number of
transmit data
RETI
Number of communication
data =
−
1?
It is determined as follows depending on the number of communication data.
+1: Transmit data completion
0: During the last data received
−1: All data received completion
Starting setting
Start communication when master start providing the
clock
When buffer empty/transfer end interrupt is generated,
it moves to interrupt processing routine
Wait for transmit completes
Buffer empty/transfer end interrupt
Disable interru
p
t
(
MASK
)
Enables interrupt
Clear interrupt request flag (XXIF), reset interrupt mask (XXMK) and set
interrupt enable (EI)
Write 1 to MDmn0 bit
Read transmit data from buffer and write it to SIOp. Update transmit
data pointer
Main routine
Main routine
Interrupt processing routine
Remarks 1. <1> to <6> in the figure correspond to <1> to <6> in Figure 12-54 Timing Chart of Slave
Transmission (in Continuous Transmission Mode).
2. m: Unit number (m = 0, 1), n: Channel number (n = 0 to 3), p: CSI number (p = 00, 01, 10, 11, 20,
21), mn = 00 to 03, 10, 11
<R>
<R>