LPC1765 I2C EEPROM does not return ACK

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

LPC1765 I2C EEPROM does not return ACK

Jump to solution
1,021 Views
Ronaa
Contributor II

We try to control 24Lc16 EEPROM using I2C0 on LPC1765.

We can see the address going out on the bus, but no ACK is received after the address.

We have 4.7k pull up resistor on SDA and SCL.

I2C1 seems to work fine with the same configuration.

What can be the problem here?

 

0 Kudos
Reply
1 Solution
994 Views
frank_m
Senior Contributor III

> The slave i write is 0XA0 ...

A common source of misunderstanding and confusion is the definition of this address. As mentioned, it is 7 bit, not 8 bit.
The datasheet either expects an AND operation with the RW-bit, or implies a left-shift of this address by one bit. Often, these datasheets reveal this only indirectly, in either their figures or waveform examples.

The easiest way would be to try out both.

View solution in original post

4 Replies
986 Views
Ronaa
Contributor II

Thanks all for the quick help. using 0x50 instead of 0xA0 works.

0 Kudos
Reply
1,000 Views
Ronaa
Contributor II

Hi

The slave i write is 0XA0 and this is what is should be according the the EEPROM data sheet. the device is AT24LC16.

We try to write 3 times and get 0X20 the the status register. we also try to read, but the response is the same.

I attach the scope image, it looks a bit different than what I expected, but it can be scope problem, not bus problem

0 Kudos
Reply
995 Views
frank_m
Senior Contributor III

> The slave i write is 0XA0 ...

A common source of misunderstanding and confusion is the definition of this address. As mentioned, it is 7 bit, not 8 bit.
The datasheet either expects an AND operation with the RW-bit, or implies a left-shift of this address by one bit. Often, these datasheets reveal this only indirectly, in either their figures or waveform examples.

The easiest way would be to try out both.

1,009 Views
xiangjun_rong
NXP TechSupport
NXP TechSupport

Hi,

As you know that the I2C of LPC1765 is master, after the 7 bits I2C slave address+W, the EEPROM must provide the ACK signal.

Pls check the EEPROM and check if the slave address of EEPROM is correct.

Can you tell us the part number of third party EEPROM?

Hope it can help you

BR

XiangJun Rong