© Koninklijke Philips Electronics N.V. 2005. All rights reserved.
User manual
Rev. 01 — 15 August 2005
146
Philips Semiconductors
UM10139
Volume 1
Chapter 11: I
2
C interfaces
11.7.5 I
2
C Slave Address register (I2ADR: I2C0, I2C0ADR - 0xE001 C00C and
I2C1, I2C1ADR - address 0xE005 C00C)
These registers are readable and writable, and is only used when an I
2
C interface is set to
slave mode. In master mode, this register has no effect. The LSB of I2ADR is the general
call bit. When this bit is set, the general call address (0x00) is recognized.
11.7.6 I
2
C SCL High duty cycle register (I2SCLH: I2C0, I2C0SCLH -
0xE001 C010 and I2C1, I2C1SCLH - 0xE0015 C010)
11.7.7 I
2
C SCL Low duty cycle register (I2SCLL: I2C0 - I2C0SCLL:
0xE001 C014; I2C1 - I2C1SCLL: 0xE0015 C014)
11.7.8 Selecting the appropriate I
2
C data rate and duty cycle
Software must set values for the registers I2SCLH and I2SCLL to select the appropriate
data rate and duty cycle. I2SCLH defines the number of PCLK cycles for the SCL high
time, I2SCLL defines the number of PCLK cycles for the SCL low time. The frequency is
determined by the following formula (PCLK is the frequency of the peripheral bus VPB):
(7)
The values for I2SCLL and I2SCLH should not necessarily be the same. Software can set
different duty cycles on SCL by setting these two registers. For example, the I
2
C-bus
specification defines the SCL low time and high time at different values for a 400 kHz I
2
C
rate. The value of the register must ensure that the data rate is in the I
2
C data rate range
of 0 through 400 kHz. Each register value must be greater than or equal to 4.
gives some examples of I
2
C-bus rates based on PCLK frequency and I2SCLL and
I2SCLH values.
Table 140: I
2
C Slave Address register (I2ADR: I2C0, I2C0ADR - address 0xE001 C00C and
I2C1, I2C1ADR - address 0xE005 C00C) bit description
Bit Symbol
Description
Reset value
0
GC
General Call enable bit.
0
7:1 Address
The I
2
C device address for slave mode.
0x00
Table 141: I
2
C SCL High Duty Cycle register (I2SCLH: I2C0, I2C0SCLH - address
0xE001 C010 and I2C1, I2C1SCLH - address 0xE005 C010) bit description
Bit
Symbol
Description
Reset value
15:0
SCLH
Count for SCL HIGH time period selection.
0x0004
Table 142: I
2
C SCL Low Duty Cycle register (I2SCLL: I2C0, I2C0SCLL - address 0xE001 C014
and I2C1, I2C1SCLL - address 0xE005 C014) bit description
Bit
Symbol
Description
Reset value
15:0
SCLL
Count for SCL LOW time period selection.
0x0004
I2C
bitfrequency
PCLK
I2CSCLH
I2CSCLL
+
---------------------------------------------------------
=