Estoy enfrentando un problema extraño. Cada vez que escribo en mi EEPROM (24LC04B), también se escribe en todas las demás páginas y no entiendo por qué.
i2cdetect -y 1 devuelve 8 páginas:
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: 50 51 52 53 54 55 56 57 -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
primera línea de la primera dirección: i2cdump -y 1 0x50 :
15 15 20 10 10 00 00 00 00 18 18 18 18 18 18 00 ?? ??....??????.
primera línea de la tercera dirección (los mismos datos): i2cdump -y 1 0x52 :
15 15 20 10 10 00 00 00 00 18 18 18 18 18 18 00 ?? ??....??????.
Actualizo el primer bloque 0x52 a 0x03: i2cset -y 1 0x52 0x00 0x03 , la salida de i2cdump -y 1 0x52 es la esperada y el primer bloque se actualizó a 0x03:
03 15 20 10 10 00 00 00 00 18 18 18 18 18 18 00 ?? ??....??????.
PERO el primer bloque de direcciones 0x50 también se actualizó : i2cdump -y 1 0x50 :
03 15 20 10 10 00 00 00 00 18 18 18 18 18 18 00 ?? ??....??????.
No puedo entender por qué. Parece que cada otra dirección es un clon de otra:
0x50 = 0x52 = 0x54 = 0x56 (same data, if one gets updated, all get)
0x51 = 0x53 = 0x55 = 0x57 (same data, if one gets updated, all get)
¿Algún consejo por favor? Gracias!