![](http://datasheet.mmic.net.cn/30000/M32176F3TFP_datasheet_2359466/M32176F3TFP_426.png)
12
12-28
Serial I/O
12.3 Transmit Operation in CSIO Mode
32176 Group User’s Manual (Rev.1.01)
12.3.3 Starting CSIO Transmission
The serial I/O starts a transmit operation when all of the following conditions are met after being initialized.
(1) Transmit conditions when CSIO mode internal clock is selected
The SIO Transmit Control Register transmit enable bit is set to "1".
Transmit data (8 bits) is written to the lower byte of the SIO Transmit Buffer Register (transmit buffer
empty bit = "0")
(2) Transmit conditions when CSIO mode external clock is selected
The SIO Transmit Control Register transmit enable bit is set to "1".
Transmit data is written to the lower byte of the SIO Transmit Buffer Register (transmit buffer empty bit = "0")
When the clock polarity select bit = "0", the transmit clock input at the SCLKI pin goes low; when the clock
polarity select bit = "1", the transmit clock input at the SCLKI pin goes high.
Notes: While the transmit enable bit is cleared to "0", writes to the transmit buffer register are invalid.
Always set the transmit enable bit to "1" before writing to the transmit buffer register.
When the internal clock is selected, a write to the lower byte of the transmit buffer register in
above triggers transmission to start.
The transmit status bit is set to "1" at the time data is set in the lower byte of the SIO Transmit
Buffer Register.
When transmission starts, the serial I/O sends data following the procedure described below.
Transfer the content of the SIO Transmit Buffer Register to the SIO Transmit Shift Register.
Set the transmit buffer empty bit to "1" (Note 1).
Start sending data synchronously with the shift clock beginning with the LSB.
Note 1: A transmit interrupt request can be generated for reasons that the transmit buffer is empty or
transmission has finished. Also, a DMA transfer request can be generated when the transmit
buffer is empty. No DMA transfer requests can be generated for reasons that transmission has
finished.
12.3.4 Successive CSIO Transmission
Once data has been transferred from the transmit buffer register to the transmit shift register, the next data can
be written to the transmit buffer register even when the serial I/O has not finished sending the previous data. If
the next data is written to the transmit buffer register before transmission has finished, the previous and the next
data are transmitted successively.
Check the SIO Transmit Control Register’s transmit buffer empty flag to see if data has been transferred from
the transmit buffer register to the transmit shift register.