R01UH0092EJ0110 Rev.1.10
Page 500 of 807
Jul 31, 2012
M16C/64C Group
23. Serial Interface UARTi (i = 0 to 2, 5 to 7)
Figure 23.26 SCL Clock
23.3.3.6
SDA Output Control
When transmitting byte data, the SDAi pin outputs transmit data for the first to eighth bits, and it is
released to receive an acknowledgment for the ninth bit.
In I
2
C mode, set 9-bit data to the UiTB register. In 9-bit data, set the transmit data to bits b7 to b0 and
set b8 to 1. By setting the UFORM bit in the UiC0 register to 1 (MSB first) and 9-bit data to the UiTB
register, transmit data is output from the SDAi pin in the following order: b7, b6, b5, b4, b3, b2, b1, b0
and b8. As b8 is 1, the SDAi pin becomes high-impedance at the ninth bit and an acknowledgment can
be received.
Figure 23.27 UiTB Register Setting (SDA Output)
Figure 23.28 Byte Data Transmission
Set bits DL2 to DL0 in the UiSMR3 register to add no delays or a delay of one to eight UiBRG count
source clock cycles to SDAi output.
Setting the SDHI bit in the UiSMR2 register to 1 (SDA output disabled) forcibly places the SDAi pin in a
high-impedance state. Do not write to the SDHI bit at the rising edge of the UARTi transmit/receive
clock as the ABT bit in the UiRB register may inadvertently become 1 (detected).
To be compatible with SCL low hold from another device, the
high time count starts after high is determined.
SCL clock
t
LOW
t
F
t
R
t
HIGH
Noise filter width + 1 to 1.5 cycles
(high determined delay)
1 / (2f
SCL
(theoretical value))
1 / (2f
SCL
(theoretical value))
b15
b8
1
Transmit data
b7
b0
UARTi Transmit Buffer Register (UiTB)
Set to 1 to release the SDAi pin
b0
b7
b6
b5
b4
b3
b2
b1
b8
SCL
(Transmitter) SDA
1
2
3
4
5
6
7
8
9
Transmit data
Release (Hi-Z)
UiTB register
←
01XXh
Содержание M16C Series
Страница 846: ...M16C 64C Group R01UH0092EJ0110...