Yahoo Groups archive

Lpc2000

Index last updated: 2026-04-28 23:31 UTC

Message

Re: I2C and bootloader control on the same pin

2005-04-20 by wittrockjeff

Hello,

I was also recently considering using the 2nd I2C interface on an 
LPC2138.  I am using the first I2C channel for communication with an 
external device, and wanted to use the second channel for 
communication with an internal EEPROM.  I noticed the same thing... 
with P0.14 shared like this, if a device latches up the SDA line on 
startup (which I have seen some EEPROMS and other I2C devices do 
even as slave devices), the LPC2138 would go into boot mode.

Clearing the slave device SDA line is usually a matter of applying 
some number of clocks, but if the LPC goes into boot mode, that does 
not good of course. 

On my design, I ended up sharing the first I2C channel with the 
internal and external devices.  I don't like doing this either.  If 
the SDA line gets held low by the external device or by an external 
short circuit, I won't be able to talk to the internal EEPROM.  I 
may end up using an I2C buffer between the internal interface, and 
the external device.

I would also like to know if there is something I am missing.  Being 
able to use the 2nd I2C channel would be nice.

Jeff W

--- In lpc2000@yahoogroups.com, "peterssonmikael" 
<mikael.petersson@k...> wrote:
> 
> On the LPC2138, P0.14 is both SDA1 and bootloader control pin. So 
if I 
> am using the second I2C-channel in a multimaster application there 
> might a situation where another I2C-unit send a 0 during reset 
> (startup) of my unit forcing it into boot mode. Have anyone 
thought 
> about this?

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.