Nxp semiconductors – NXP Semiconductors LPC24XX UM10237 User Manual
Page 787
![background image](/manuals/190592/787/background.png)
UM10237_4
© NXP B.V. 2009. All rights reserved.
User manual
Rev. 04 — 26 August 2009
787 of 792
NXP Semiconductors
UM10237
Chapter 36: LPC24XX Supplementary information
Data Timer Register (MCIDataTimer -
0xE008 C024). . . . . . . . . . . . . . . . . . . . . . . . 567
Data Control Register (MCIDataCtrl -
0xE008 C02C) . . . . . . . . . . . . . . . . . . . . . . . 568
Data Counter Register (MCIDataCnt -
0xE008 C030). . . . . . . . . . . . . . . . . . . . . . . . 568
Status Register (MCIStatus - 0xE008 C034) 569
Clear Register (MCIClear - 0xE008 C038) . 570
Interrupt Mask Registers (MCIMask0 -
0xE008 C03C) . . . . . . . . . . . . . . . . . . . . . . . 570
FIFO Counter Register (MCIFifoCnt -
0xE008 C048) . . . . . . . . . . . . . . . . . . . . . . . 571
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