AT24C256 Mémoire EEPROM 256Kbits
La mémoire EEPROM AT24C256 est un composant crucial pour le stockage non volatile dans une multitude de projets électroniques. Avec une capacité de 32Ko et une interface I²C, elle est particulièrement adaptée aux applications nécessitant une rétention sécurisée des données même en l’absence d’alimentation.
Caractéristiques Techniques de la Mémoire EEPROM AT24C256
- Mémoire EEPROM: AT24C256
- Capacité: 256Kbits (32Ko)
- Interface: I²C
- Tension de fonctionnement: 2.5V à 5.5V
- Broches: 8 broches DIP
- Durée de conservation des données: 100 ans
- Nombre de cycles d’écriture/effacement: 1 million de cycles
- Courant de stand-by: 1 µA typique
- Courant d’écriture/lecture: 3 mA / 1 mA respectivement
Applications
Les principales applications du AT24C256 sont variées :
- Implantation dans des appareils électroniques nécessitant une sauvegarde des configurations utilisateurs
- Utilisation dans des systèmes embarqués pour la conservation de paramètres critiques
- Projets étudiants incluant des fonctionnalités de mémoire non volatile
Utilisation avec Arduino
Le AT24C256 peut être facilement intégré à des projets Arduino pour ajouter des capacités de stockage non volatile. Voici un guide rapide pour sa mise en œuvre :
- Connexion: Connectez la broche Vcc à 5V et la broche GND à la terre. Connectez la broche SDA (broche 5) à la broche A4 de l’Arduino et la broche SCL (broche 6) à la broche A5.
- Programmation: Utilisez la bibliothèque Wire.h pour interagir avec EEPROM. Voici un exemple simple de code :
#include <Wire.h>
#define EEPROM_ADDR 0x50
void setup() {
Wire.begin();
Serial.begin(9600);
writeEEPROM(0x00, 0x42); // Écrit 0x42 à l'adresse 0x00
byte val = readEEPROM(0x00); // Lit l'adresse 0x00
Serial.println(val, HEX); // Affiche la valeur
}
void loop() {}
void writeEEPROM(int address, byte val) {
Wire.beginTransmission(EEPROM_ADDR);
Wire.write((int)(address >> 8)); // MSB
Wire.write((int)(address & 0xFF)); // LSB
Wire.write(val);
Wire.endTransmission();
delay(5);
}
byte readEEPROM(int address) {
byte rData = 0xFF;
Wire.beginTransmission(EEPROM_ADDR);
Wire.write((int)(address >> 8)); // MSB
Wire.write((int)(address & 0xFF)); // LSB
Wire.endTransmission();
Wire.requestFrom(EEPROM_ADDR, 1);
if (Wire.available()) rData = Wire.read();
return rData;
}
- Test: Utilisez ce code pour tester les fonctionnalités de lecture et d’écriture. Vérifiez les retours dans le moniteur série.
Brochage
- Vcc: Broche 8
- GND: Broche 4
- SDA: Broche 5
- SCL: Broche 6