Cómo usar el EEPROM AT24C256 con Arduino

How to Use the AT24C256 EEPROM with Arduino

El AT24C256 es un EEPROM de 256 kilobits que proporciona almacenamiento no volátil, lo que permite que los datos persistan incluso cuando la energía está apagada. Se comunica con un microcontrolador a través del protocolo I2C, lo que lo hace ideal para almacenar datos de sensores, configuraciones u otra información en proyectos de Arduino. Este tutorial lo guiará a través de la interfaz y el uso del AT24C256 con Arduino.


Lo que necesitarás

  1. AT24C256 Módulo EEPROM o IC
  2. Arduino Board (por ejemplo, Uno, Mega, Nano)
  3. Cables de placa y jersey
  4. Una computadora con el Arduino IDE instalado

Paso 1: Comprender el AT24C256

El AT24C256 EEPROM tiene las siguientes características:

  • Capacidad de almacenamiento: 32 kb (256 kbits = 32,768 bytes)
  • Protocolo de comunicación: I2C
  • Dirección I2C: Configurable entre 0x50 y 0x57 Usando pines A0, A1 y A2
  • Voltaje de funcionamiento: 2.5V a 5.5V

Pinout

Alfiler Función
A0, a1, a2 Configuración de la dirección I2C
VCC Fuente de alimentación (5V)
Gnd Suelo
SDA Línea de datos I2C
SCL Línea de reloj I2C
WP Protección de escritura (opcional, conéctese a GND para habilitar el acceso a la escritura)

Paso 2: Cableado el AT24C256 a Arduino

Conecte el AT24C256 al Arduino de la siguiente manera:

AT24C256 PIN Alfiler de arduino
VCC 5V
Gnd Gnd
SDA A4
SCL A5
WP Gnd

Nota: Si usa un módulo con resistencias pull-up, no se necesitan resistencias adicionales. Para ICS independientes, use resistencias pull-up de 4.7kΩ en las líneas SDA y SCL.


Paso 3: Instale la biblioteca requerida

Para simplificar el trabajo con el AT24C256, instale la biblioteca "Cable" (integrada en el IDE Arduino) y la biblioteca "EEPROM_AT24C256".

Pasos para instalar EEPROM_AT24C256 Biblioteca:

  1. Abra el IDE Arduino.
  2. Ir a Bosquejo > Incluir biblioteca > Administrar bibliotecas.
  3. Busque "AT24C256" y haga clic en Instalar.

Paso 4: cargar el código

Ejemplo: escribir y leer datos

Este código demuestra cómo escribir una cadena en el EEPROM y luego leerla:

#include <Wire.h>
#include <AT24C256.h>

AT24C256 eeprom(0x50); // Initialize EEPROM with default I2C address

void setup() {
  Serial.begin(9600);
  while (!Serial);

  Serial.println("AT24C256 EEPROM Test");

  // Write data to EEPROM
  String dataToWrite = "Hello, EEPROM!";
  Serial.print("Writing to EEPROM: ");
  Serial.println(dataToWrite);
  for (int i = 0; i < dataToWrite.length(); i++) {
    eeprom.writeByte(i, dataToWrite[i]);
  }

  delay(1000); // Wait for data to be written

  // Read data from EEPROM
  Serial.println("Reading from EEPROM:");
  for (int i = 0; i < dataToWrite.length(); i++) {
    char c = eeprom.readByte(i);
    Serial.print(c);
  }
  Serial.println();
}

void loop() {
  // Nothing to do here
}

Paso 5: prueba la configuración

  1. Conecte el Arduino a su computadora a través de USB.
  2. Abra el IDE Arduino y seleccione el correcto Junta y Puerto bajo el Herramientas menú.
  3. Cargar el código haciendo clic en Subir.
  4. Abra el monitor en serie (Herramientas > Monitor en serie) y establecer la tasa de baudios en 9600.
  5. Observe los datos escritos y de lectura que se muestran en el monitor en serie.

Opcional: borrar datos

Para borrar el EEPROM, escriba 0xFF a todas las ubicaciones de memoria:

for (int i = 0; i < 32768; i++) {
  eeprom.writeByte(i, 0xFF);
}

Aplicaciones del AT24C256

  1. Almacenamiento de registros de datos del sensor
  2. Configuración de configuración para dispositivos IoT
  3. Almacenar preferencias de usuario
  4. Creación de sistemas de registro de datos

Solución de problemas

  • Sin comunicación: Verifique el cableado I2C y asegúrese de utilizar la dirección I2C correcta.
  • Datos incorrectos lee: Asegúrese de que el proceso de escritura se haya completado antes de leer.
  • Protección de escritura habilitada: Verifique que el pin WP esté conectado a GND para el acceso a la escritura.

Conclusión

Ha interactuado con éxito el EEPROM AT24C256 con Arduino, lo que le permite almacenar y recuperar datos no volátiles en sus proyectos. ¡Experimente con sus capacidades para crear sistemas de registro de datos, almacenamiento de configuración u otras aplicaciones dependientes de la memoria!

Escribir un comentario

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.