Estoy usando esta EEPROM: Atmel AT25640B SPI EEPROM HOJA DE DATOS
Parece bastante sencillo de operar y he seguido de cerca la hoja de datos al codificar mi controlador. Parecía tener algún éxito sin demasiados problemas. Ahora, tengo algún problema con la escritura de bytes y no se pegan. Por ejemplo, escribo 10 bytes, pero cuando los leo inmediatamente (para verificar que se hayan escrito, recibo los 10 bytes de nuevo en 0. ¿Hay algo fundamental que me esté faltando sobre cómo operar esta EEPROM?
Según entiendo de Page Write, ¿puedo escribir hasta 32 bytes secuencialmente y luego se desplazará a la dirección de inicio? ¿Las "páginas" están configuradas físicamente 0-31, 32-63, etc. o están determinadas por el lugar en el que comienza a escribir? Ejemplo: si escribo 8 bytes en la dirección 29, ¿se transferirá a 0 o continuará como se esperaba y terminará de escribir a los 36? La hoja de datos no está clara.
Los pasos básicos parecen ser enviar un comando WRITE ENABLE (1). Luego, por separado, envíe un comando ESCRIBIR seguido de la dirección y los bytes para escribir.
Estoy ejecutando el a 5v. He intentado reducir la velocidad del reloj SPI a 1 khz desde 10 mhz sin ninguna diferencia en el comportamiento.
¿Qué más puedo probar?