cancel
Showing results for 
Search instead for 
Did you mean: 

M24C16-RMN6TP EEPROM shows multiple addresses in the I2C bus. And able to do I2C R/W in all the addresses.

MP.3
Associate

In our custom board, we are using M24C16-RMN6TP EEPROM. When we tried detecting the address of the EEPROM, we are able to get the address as 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56 and 0X57. But, it should be one address from 0x50 to 0x57. And we are able to perform I2C read and write in all the above-mentioned addresses. When we checked about the pin configurations in the datasheet, there were no specific pins to set the address, i.e pins were NC. Could you suggest a way to set one address for the EEPROM?

1 REPLY 1
Peter BENSCH
ST Employee

Welcome, @MP.3​, to the community,

you may be confused by the addressing order in the EEPROM.

Section 4.5 of the datasheet shows that the actual device address 0xA (binary 0b1010) is transmitted in the upper nibble of the first byte.

Bit 3..1 of this 1st byte and the 2nd byte together contain the 11-bit address of the byte to be addressed in the 2KB block.

Finally, bit 0 of the first byte determines whether a byte is read or written.

Please read Section 5 for the different modes available, such as Byte Write, Page Write, Random Address Read, Current Address Read, Sequential Random Read, Sequential Current Read.

Within the diagrams Dev select stands for the 1st byte and Byte address for the 2nd byte mentioned above.

This means that the EEPROM is selected with Dev Select in the range 0xA0...0xAF.

Good luck!

When your question is answered, please close this topic by choosing Select as Best. This will help other users find that answer faster.

/Peter

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.