Nxp Semiconductors UM10237 ユーザーズマニュアル

ページ / 792
UM10237_2
© NXP B.V. 2008. All rights reserved.
User manual
Rev. 02 — 19 December 2008 
599 of 792
NXP Semiconductors
UM10237
Chapter 22: LPC24XX I
2
C interfaces I
2
C0/1/2
9.5 Miscellaneous states
There are two I2STAT codes that do not correspond to a defined I
2
C hardware state (see 
). These are discussed below.
22.9.5.1  I2STAT = 0xF8
This status code indicates that no relevant information is available because the serial 
interrupt flag, SI, is not yet set. This occurs between other states and when the I
2
C block 
is not involved in a serial transfer.
22.9.5.2  I2STAT = 0x00
This status code indicates that a bus error has occurred during an I
2
C serial transfer. A 
bus error is caused when a START or STOP condition occurs at an illegal position in the 
format frame. Examples of such illegal positions are during the serial transfer of an 
address byte, a data byte, or an acknowledge bit. A bus error may also be caused when 
external interference disturbs the internal I
2
C block signals. When a bus error occurs, SI is 
set. To recover from a bus error, the STO flag must be set and SI must be cleared. This 
causes the I
2
C block to enter the “not addressed” slave mode (a defined state) and to 
clear the STO flag (no other bits in I2CON are affected). The SDA and SCL lines are 
released (a STOP condition is not transmitted).