
UM10237_2
© NXP B.V. 2008. All rights reserved.
User manual
Rev. 02 — 19 December 2008
787 of 792
NXP Semiconductors
UM10237
Chapter 36: LPC24XX Supplementary information
FIFO Counter Register (MCIFifoCnt -
0xE008 C048). . . . . . . . . . . . . . . . . . . . . . . . 571
2
C interfaces I
2
C0/1/2
Basic configuration . . . . . . . . . . . . . . . . . . . . 572
Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572
Applications . . . . . . . . . . . . . . . . . . . . . . . . . . 572
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . 572
Pin description . . . . . . . . . . . . . . . . . . . . . . . . 574
2
C operating modes . . . . . . . . . . . . . . . . . . . 574
Master Transmitter mode . . . . . . . . . . . . . . . 574
Master Receiver mode . . . . . . . . . . . . . . . . . 575
Slave Receiver mode . . . . . . . . . . . . . . . . . . 576
Slave Transmitter mode . . . . . . . . . . . . . . . . 577
2
C implementation and operation . . . . . . . . 577
Input filters and output stages. . . . . . . . . . . . 577
Address Register I2ADDR . . . . . . . . . . . . . . 579
Comparator. . . . . . . . . . . . . . . . . . . . . . . . . . 579
Shift register I2DAT. . . . . . . . . . . . . . . . . . . . 579
Arbitration and synchronization logic . . . . . . 579
Serial clock generator . . . . . . . . . . . . . . . . . . 580
Timing and control . . . . . . . . . . . . . . . . . . . . 580
Control register I2CONSET and I2CONCLR 580
Status decoder and status register . . . . . . . . 581
Register description . . . . . . . . . . . . . . . . . . . 581
C Control Set Register (I2C[0/1/2]CONSET:
0xE001 C000, 0xE005 C000, 0xE008 0000) 582
C Control Clear Register (I2C[0/1/2]CONCLR:
0xE001 C018, 0xE005 C018, 0xE008 0018) 584
C Status Register (I2C[0/1/2]STAT -
0xE001 C004, 0xE005 C004, 0xE008 0004) 584
C Data Register (I2C[0/1/2]DAT - 0xE001 C008,
0xE005 C008, 0xE008 0008) . . . . . . . . . . . . 585
C Slave Address Register (I2C[0/1/2]ADR -
0xE001 C00C, 0xE005 C00C, 0xE008 000C) 585
C SCL High Duty Cycle Register
(I2C[0/1/2]SCLH - 0xE001 C010, 0xE005 C010,
0xE008 0010) . . . . . . . . . . . . . . . . . . . . . . . . 585
C SCL Low Duty Cycle Register
(I2C[0/1/2]SCLL - 0xE001 C014, 0xE005 C014,
0xE008 0014) . . . . . . . . . . . . . . . . . . . . . . . . 585
2
C data rate and duty
cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585
C operating modes. . . . . . . . . . . 586
Master Transmitter mode . . . . . . . . . . . . . . . 587
Master Receiver mode . . . . . . . . . . . . . . . . . 588
Slave Receiver mode . . . . . . . . . . . . . . . . . . 588
Slave Transmitter mode . . . . . . . . . . . . . . . . 593
Miscellaneous states . . . . . . . . . . . . . . . . . . 599
I2STAT = 0xF8 . . . . . . . . . . . . . . . . . . . . . . . 599
I2STAT = 0x00 . . . . . . . . . . . . . . . . . . . . . . . 599
Some special cases . . . . . . . . . . . . . . . . . . . 600
Data transfer after loss of arbitration . . . . . . 600
2
C bus. . . . . . . . . . . . 600
2
C Bus obstructed by a Low level on SCL or SDA
601
Bus error . . . . . . . . . . . . . . . . . . . . . . . . . . . 601
2
C State service routines. . . . . . . . . . . . . . . 602
Initialization . . . . . . . . . . . . . . . . . . . . . . . . . 602
2
C interrupt service . . . . . . . . . . . . . . . . . . . 603
The state service routines . . . . . . . . . . . . . . 603
Adapting state services to an application. . . 603
Software example . . . . . . . . . . . . . . . . . . . . . 603
Initialization routine . . . . . . . . . . . . . . . . . . . 603
Start master transmit function . . . . . . . . . . . 603
Start master receive function . . . . . . . . . . . . 603
2
C interrupt routine . . . . . . . . . . . . . . . . . . . 604
Non mode specific states . . . . . . . . . . . . . . . 604
State : 0x00 . . . . . . . . . . . . . . . . . . . . . . . . . 604
Master states . . . . . . . . . . . . . . . . . . . . . . . . 604
State : 0x08 . . . . . . . . . . . . . . . . . . . . . . . . . 604
State : 0x10 . . . . . . . . . . . . . . . . . . . . . . . . . 604
Master Transmitter states . . . . . . . . . . . . . . 605
State : 0x18 . . . . . . . . . . . . . . . . . . . . . . . . . 605
State : 0x20 . . . . . . . . . . . . . . . . . . . . . . . . . 605
State : 0x28 . . . . . . . . . . . . . . . . . . . . . . . . . 605
State : 0x30 . . . . . . . . . . . . . . . . . . . . . . . . . 605
State : 0x38 . . . . . . . . . . . . . . . . . . . . . . . . . 606
Master Receive states . . . . . . . . . . . . . . . . . 606
State : 0x40 . . . . . . . . . . . . . . . . . . . . . . . . . 606
State : 0x48 . . . . . . . . . . . . . . . . . . . . . . . . . 606
State : 0x50 . . . . . . . . . . . . . . . . . . . . . . . . . 606
State : 0x58 . . . . . . . . . . . . . . . . . . . . . . . . . 606
Slave Receiver states . . . . . . . . . . . . . . . . . 607
State : 0x60 . . . . . . . . . . . . . . . . . . . . . . . . . 607
State : 0x68 . . . . . . . . . . . . . . . . . . . . . . . . . 607
State : 0x70 . . . . . . . . . . . . . . . . . . . . . . . . . 607
State : 0x78 . . . . . . . . . . . . . . . . . . . . . . . . . 607
State : 0x80 . . . . . . . . . . . . . . . . . . . . . . . . . 608
State : 0x88 . . . . . . . . . . . . . . . . . . . . . . . . . 608
State : 0x90 . . . . . . . . . . . . . . . . . . . . . . . . . 608
State : 0x98 . . . . . . . . . . . . . . . . . . . . . . . . . 608
State : 0xA0 . . . . . . . . . . . . . . . . . . . . . . . . . 608
Slave Transmitter States . . . . . . . . . . . . . . . 609
State : 0xA8 . . . . . . . . . . . . . . . . . . . . . . . . . 609
State : 0xB0 . . . . . . . . . . . . . . . . . . . . . . . . . 609
State : 0xB8 . . . . . . . . . . . . . . . . . . . . . . . . . 609
State : 0xC0 . . . . . . . . . . . . . . . . . . . . . . . . . 609
State : 0xC8 . . . . . . . . . . . . . . . . . . . . . . . . . 610
2
S interface
Basic configuration . . . . . . . . . . . . . . . . . . . . 611
Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 611