Kuinka käyttää AT24C256 EEPROM Arduinon kanssa

How to Use the AT24C256 EEPROM with Arduino

AT24C256 on 256 kilobit-EEPROM, joka tarjoaa haihtumattoman tallennuksen, jolloin datan pysyminen jatkuu myös silloin, kun virta on pois päältä. Se kommunikoi mikrokontrollerin kanssa I2C -protokollan kautta, mikä tekee siitä ihanteellisen anturitietojen, kokoonpanojen tai muun tiedon tallentamiseen Arduino -projekteissa. Tämä opetusohjelma opastaa sinua liitäntää ja käyttämällä AT24C256 Arduinon kanssa.


Mitä tarvitset

  1. AT24C256 EEPROM -moduuli tai IC
  2. Arduino Board (esim. UNO, Mega, Nano)
  3. Leipälevy- ja hyppyjohdot
  4. Tietokone, jossa Arduino IDE on asennettu

Vaihe 1: AT24C256: n ymmärtäminen

AT24C256 EEPROM: lla on seuraavat ominaisuudet:

  • Varastointikapasiteetti: 32 kb (256 kt = 32 768 tavua)
  • Viestintäprotokolla: I2C
  • I2C -osoite: Konfiguroida 0x50 ja 0x57 Käyttämällä A0-, A1- ja A2 -nastaja
  • Käyttöjännite: 2,5 V - 5,5 V

Pinot

Nasta Funktio
A0, A1, A2 I2C -osoitteen kokoonpano
VCC Virtalähde (5 V)
Hölynpöly Pohja
SDA I2C -datalinja
SCL I2C -kellolinja
WP Kirjoitasuojaus (valinnainen, yhdistä GND: hen salliaksesi kirjoituskäytön)

Vaihe 2: AT24C256: n johdotus Arduinolle

Kytke AT24C256 Arduinoon seuraavasti:

AT24C256 -nasta Arduino -nasta
VCC 5V
Hölynpöly Hölynpöly
SDA A4
SCL A5
WP Hölynpöly

Huomaa: Jos käytät moduulia, jossa on vetovastuksia, lisävastuksia ei tarvita. Käytä itsenäisiä IC-arvoja SDA- ja SCL-linjojen 4,7 kΩ: n pull-up-vastuksia.


Vaihe 3: Asenna vaadittu kirjasto

Yksinkertaistaaksesi työskentelyä AT24C256: n kanssa, asenna "Wire" -kirjasto (rakennettu Arduino IDE: hen) ja "EEPROM_AT24C256" -kirjastoon.

Vaiheet asentaaksesi EEPROM_AT24C256 -kirjasto:

  1. Avaa Arduino IDE.
  2. Mennä jhk Luonnos > Sisällytä kirjasto > Hallitse kirjastoja.
  3. Etsi "AT24C256" ja napsauta Asentaa.

Vaihe 4: Lataa koodi

Esimerkki: Tietojen kirjoittaminen ja lukeminen

Tämä koodi osoittaa kuinka kirjoittaa merkkijono EEPROM: lle ja sitten lukea se takaisin:

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

Vaihe 5: Testaa asennus

  1. Kytke Arduino tietokoneeseen USB: n kautta.
  2. Avaa Arduino IDE ja valitse oikea Hallitus ja Satama alla Työkalut valikko.
  3. Lataa koodi napsauttamalla Ladata.
  4. Avaa sarjamonitori (Työkalut > Sarjamonitori) ja aseta baud -arvo 9600.
  5. Tarkkaile sarjamonitorissa näkyviä kirjallisia ja lukutietoja.

Valinnainen: Tietojen poistaminen

Poista EEPROM, kirjoita 0xFF Kaikille muistipaikoille:

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

AT24C256: n sovellukset

  1. Anturitietolokien tallentaminen
  2. IoT -laitteiden määritysasetukset
  3. Käyttäjäasetusten tallentaminen
  4. Rakennustietojärjestelmät

Vianetsintä

  • Ei viestintää: Tarkista I2C -johdotus ja varmista, että oikeaa I2C -osoitetta käytetään.
  • Virheelliset tiedot luetaan: Varmista, että kirjoitusprosessi on valmis ennen lukemista.
  • Kirjoitasuojaus käytössä: Varmista, että WP -nasta on kytketty GND: hen kirjoituskäyttöä varten.

Johtopäätös

Olet onnistuneesti liitetty AT24C256 EEPROM -laitteeseen Arduinon kanssa, jolloin voit tallentaa ja hakea haihtumattomia tietoja projekteissasi. Kokeile sen ominaisuuksia luodaksesi tietojen suojausjärjestelmiä, kokoonpanon tallennustilaa tai muita muistiriippuvaisia ​​sovelluksia!

Jätä kommentti

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.