Aus Raspberry Pi Geek 02/2018

I2C-Workshop Teil 17: EEPROM 24LC1025

© delcreations, 123RF

Bleibende Werte

Martin Mohr

Ein EEPROM dient dazu, Daten auch nach Abschalten der Energiezufuhr zu speichern, etwa als Kanalspeicher in Autoradios. Wir zeigen, wie Sie einen solchen Speicher beschreiben und wieder auslesen.

EEPROMs kommen zum Einsatz, wenn es darum geht, Informationen auch über das Abschalten der Betriebsspannung hinaus zu erhalten, wie etwa im Senderspeicher eines Autoradios. Generell eignet sich ein EEPROM nur für eine begrenzte Anzahl von Lösch- und Schreibzyklen. Die maximale garantierte Anzahl liegt beim hier beschriebenen Baustein 24LC1025 [1] allerdings jenseits der Million.

Das klingt zunächst nach sehr viel – würde man aber das EEPROM im Sekundentakt beschreiben, wäre der maximale Wert schon nach knapp zwölf Tagen erreicht. Man sollte daher immer versuchen, so selten wie möglich in ein EEPROM zu schreiben – das Lesen aus einem solchen Speicher ist jedoch unkritisch.

Der 24LC1025

Der 24LC1025 lässt sich an einer Betriebsspannung von 2,5 Volt bis 5,5 Volt betreiben, der maximale Takt beträgt 400 MHz. Es gibt den Chip konfektioniert in einem DIL8-Gehäuse – die bevorzugte Bauform, um ihn auf einem Breadboard zu verwenden.

Das Pinout (Abbildung 1) des Bausteins zeigt, dass er über drei Adressleitungen verfügt. Die Leitung A2 muss laut Datenblatt immer auf VCC gelegt werden. Damit verbleiben zum Ansteuern des Speichers vier mögliche I2C-Adressen: 0x50/0x54 bis 0x53/57.

Daneben bringt der Chip die üblichen I2C-Anschlüsse SDA und SCL mit. Über den Anschluss WP (Write Protect) schalten Sie das EEPROM in den Nur-Lese-Modus.

Abbildung 1: Das Pinout des 24LC1025-EEPROMs.

Abbildung 1: Das Pinout des 24LC1025-EEPROMs.

Der 24LC1025 belegt immer zwei Adressen auf dem I2C-Bus. Die Basisadressen 0x50 bis 0x53 eignen sich für einfache Byte-Lese-/Schreiboperationen. Blockoperationen lassen sich über die jeweils 4 Byte höhere Adresse 0x54 bis 0x57 ausführen.

Im Byte-Modus gibt es die Möglichkeit, von der aktuellen oder einer frei wählbaren Adresse zu lesen. Darüber hinaus lassen sich im Blockmodus komplette Blöcke (128 Byte) gepuffert schreiben oder lesen. Die unterschiedlichen Modi steuert ein Bit im I2C-Address-Byte.

Langer Rede kurzer Sinn: Der 24LC1025 belegt auf dem I2C-Bus mehrere Adressen. Je nachdem, welche Sie wählen, nutzt er einen anderen Betriebsmodus. Detailliertere Informationen dazu liefert das Datenblatt [2].

Aufbau

Abbildung 2 zeigt unseren Testaufbau mit der Verbindung des EEPROMs zum I2C-Bus des RasPi. Die Leitungen A0, A1 und WP ziehen Pulldown-Widerstände gegen Masse. Über die DIP-Schalter lassen sich diese Anschlüsse auf VCC legen.

Abbildung 2: Für den Testaufbau benötigen Sie neben dem RasPi lediglich ein Breadboard und einen DIP-Schalter.

Abbildung 2: Für den Testaufbau benötigen Sie neben dem RasPi lediglich ein Breadboard und einen DIP-Schalter.

Da die DIP-Schalter häufig etwas wackelig im Breadboard sitzen, empfiehlt es sich, sie in einen IC-Sockel zu stecken. Der Sockel hat etwas längere und dickere Beine als die Schalter, was ihm erheblich mehr Halt auf dem Breadboard gibt.

Die Betriebsspannung (VCC) bezieht das EEPROM aus dem 3,3-Volt-Anschluss des Raspberry Pi. Es benötigt weniger als 0,5 Milliampere Strom, was die GPIO des RasPi problemlos bereitstellt. Abbildung 3 zeigt den Schaltplan des Versuchsaufbaus.

Abbildung 3: Der Schaltplan.

Abbildung 3: Der Schaltplan.

Test

Für unsere Tests greifen wir auf unsere Umgebung aus Teil 10 der Reihe [3] zurück. Sie beschreibt das Einrichten der I2C-Schnittstelle. Diese Umgebung enthält auch alle Tools, die wir zum Testen in diesem Artikel benötigen. Die Testprogramme schreiben wir in C. Um den Aufbau zu überprüfen, kommt das Tool I2cdetect zum Einsatz. Stehen alle DIP-Schalter nicht auf ON, lässt sich das EEPROM beschreiben, und I2cdetect liefert die Ausgabe aus Listing 1. Tut es das nicht, müssen Sie Ihren Testaufbau noch einmal überprüfen.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 4 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben