© Koninklijke Philips Electronics N.V. 2006. All rights reserved.
User manual
Rev. 01 — 12 January 2006
131
Philips Semiconductors
UM10161
Volume 1
Chapter 11: I
2
C interfaces
11.7.4 I
2
C Data register (I2DAT: I2C0, I2C0DAT - 0xE001 C008 and I2C1,
I2C1DAT - 0xE005 C008)
This register contains the data to be transmitted or the data just received. The CPU can
read and write to this register only while it is not in the process of shifting a byte, when the
SI bit is set. Data in I2DAT remains stable as long as the SI bit is set. Data in I2DAT is
always shifted from right to left: the first bit to be transmitted is the MSB (bit 7), and after a
byte has been received, the first bit of received data is located at the MSB of I2DAT.
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 APB):
Table 124: I
2
C Data register (I2DAT: I2C0, I2C0DAT - address 0xE001 C008 and I2C1, I2C1DAT
- address 0xE005 C008) bit description
Bit Symbol
Description
Reset value
7:0 Data
This register holds data values that have been received, or are to
be transmitted.
0
Table 125: 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 126: 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 127: 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