Come utilizzare l'EEPROM AT24C256 con Arduino

How to Use the AT24C256 EEPROM with Arduino

L'AT24C256 è una EEPROM da 256 kilobit che fornisce un'archiviazione non volatile, consentendo ai dati di persistere anche quando la potenza è disattivata. Comunica con un microcontrollore tramite il protocollo I2C, rendendolo ideale per la memorizzazione di dati dei sensori, configurazioni o altre informazioni nei progetti Arduino. Questo tutorial ti guiderà attraverso l'interfaccia e l'utilizzo di AT24C256 con Arduino.


Cosa avrai bisogno

  1. Modulo EEPROM AT24C256 o IC
  2. Arduino Board (ad es. Uno, Mega, Nano)
  3. Breadboard e fili jumper
  4. Un computer con l'IDE Arduino installato

Passaggio 1: Comprensione dell'AT24C256

L'EEPROM AT24C256 ha le seguenti caratteristiche:

  • Capacità di archiviazione: 32 kb (256 kbit = 32.768 byte)
  • Protocollo di comunicazione: I2c
  • Indirizzo I2C: Configurabile tra 0x50 E 0x57 Usando i pin A0, A1 e A2
  • Tensione operativa: Da 2,5 V a 5,5 V.

Pinout

Spillo Funzione
A0, A1, A2 Configurazione dell'indirizzo I2C
VCC Alimentazione (5V)
GND Terra
SDA Linea di dati I2C
SCL Linea di orologio i2c
Wp Protezione da scrittura (opzionale, connettersi a GND per abilitare l'accesso a scrittura)

Passaggio 2: Cablaggio dell'AT24C256 ad Arduino

Collegare l'AT24C256 all'Arduino come segue:

Pin AT24C256 Arduino Pin
VCC 5v
GND GND
SDA A4
SCL A5
Wp GND

Nota: Se si utilizza un modulo con resistori di pull-up, non sono necessari resistori aggiuntivi. Per ICS autonomi, utilizzare resistori pull-up da 4.7kΩ sulle linee SDA e SCL.


Passaggio 3: installare la libreria richiesta

Per semplificare il lavoro con la libreria AT24C256, installare la libreria "Wire" (integrata nell'IDE Arduino) e la libreria "EEPROM_AT24C256".

Passaggi per installare la libreria EEPROM_AT24C256:

  1. Apri l'IDE Arduino.
  2. Vai a Schizzo > Includi la libreria > Gestisci le biblioteche.
  3. Cerca "AT24C256" e fai clic su Installare.

Passaggio 4: caricare il codice

Esempio: dati di scrittura e lettura

Questo codice dimostra come scrivere una stringa all'EEPROM e poi riatterlo:

#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
}

Passaggio 5: testare l'installazione

  1. Collega l'Arduino al tuo computer tramite USB.
  2. Apri l'IDE Arduino e seleziona il corretto Asse E Porta sotto il Utensili menu.
  3. Carica il codice facendo clic Caricamento.
  4. Apri il monitor seriale (Utensili > Monitor seriale) e impostare il tasso di baud su 9600.
  5. Osservare i dati scritti e letti visualizzati nel monitor seriale.

Opzionale: cancellare i dati

Per cancellare l'Eeprom, scrivere 0xFF a tutte le posizioni di memoria:

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

Applicazioni dell'AT24C256

  1. Archiviazione dei registri dei dati del sensore
  2. Impostazioni di configurazione per dispositivi IoT
  3. Memorizzazione delle preferenze dell'utente
  4. Costruire sistemi di logging dei dati

Risoluzione dei problemi

  • Nessuna comunicazione: Controlla il cablaggio I2C e assicurati che venga utilizzato l'indirizzo I2C corretto.
  • Dati errati lettura: Assicurarsi che il processo di scrittura sia completato prima della lettura.
  • Protezione da scrittura abilitata: Verificare che il pin WP sia collegato a GND per l'accesso alla scrittura.

Conclusione

Hai interfacciato con successo l'EEPROM AT24C256 con Arduino, permettendoti di archiviare e recuperare dati non volatili nei tuoi progetti. Sperimenta le sue capacità per creare sistemi di blocco dati, archiviazione di configurazione o altre applicazioni dipendenti dalla memoria!

Lascia un commento

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.