Forum: Mikrocontroller und Digitale Elektronik Kann ein 24LC1025 I2C-EEPROM teilweise defekt sein?


von Christian S. (roehrenvorheizer)


Lesenswert?

Hallo allerseits,

ich habe zur Anwendung des 24LC1025 EEPROMs weitere Programmteile 
erstellt und kann beispielsweise einen oder mehrere Fonts für das GLCD 
darin Speichern. Hierfür verwende ich zum Schreiben den "page-mode" mit 
128 Bytes Länge und zum Lesen "sequential read". Sehr schön lassen sich 
die Zeichen eines 8x8-Fonts in den Zeilen des GLCDs in der vorgegebenen 
Reihenfolge darstellen. Natürlich braucht es dafür mehrere Ausgaben, um 
den ganzen Font mit 256 Zeichen anschauen zu können.

ABER! Die Reihenfolge ist an vielen Stellen falsch. Es wird sogar in 
einen anderen darunter liegenden Speicherbereich hinein geschrieben, 
wenn ich einen höher liegenden Bereich neu beschreibe.

Es erscheinen Zeichen, die erst 16 Zeichen später erscheinen dürften. 
Innerhalb eines 16er-Intervals sind immer wieder zwei oder drei Zeichen 
an der korrekten Stelle, die anderen dürften hier noch gar nicht sein. 
So erschient das Alphabet oder 0123456789 nicht in der richtigen 
Abfolge.

Ich habe es mit der direkten Ausgabe aus dem Flash gegen-getestet. Die 
Differenzen sind reproduzierbar.
Ich habe auf dem DSO die Bytes angeschaut. Das DSO liest die gleichen 
Bytes, die auch auf dem GLCD als Zeichen dargestellt werden. Das 
page-write funktioniert gut. ACK-Polling funktioniert für jede page.
Datenverlust entsteht nicht!

Seitdem vermute ich eine Vorschädigung der beiden bei mir liegenden 
EEPROM-Exemplare, da genau diese beiden hier
Beitrag "Kein ACK mehr am 24LC1025"
bereits für Wirbel sorgten. Ich habe leider noch keine neuen da.

Vermutung:
Das EEPROM ist intern beschädigt und steuert falsche Speicheradressen 
an, während es den Adresszähler jeweils um eins weiter zählt.

Nun die triviale Frage:
Hatte schon jemand einen solchen Schaden an einem EEPROM beobachten 
können?

mit freundlichem Gruß

: Bearbeitet durch User
von Einer K. (Gast)


Lesenswert?

Ich finde es interessant, das du bei uns Bestätigung für ein defektes 
EEPROM sucht.
Nein, für zwei EEPROMs.

Wäre es nicht eher angesagt, deine Adressberechnungen in Zweifel zu 
ziehen?
Ich tue das!

von Christian S. (roehrenvorheizer)


Lesenswert?

Hallo,

einen interessanten Beitrag wollte ich ausdrücklich beisteuern.

Die Adressberechnungen fallen beim Schreiben immer nur zu Beginn eines 
128 Bytes großen "page-write"-Zyklusses an und sind laut Decodierung 
mittels DSO korrekt, also bei jedem Zyklus 128 mehr. Die Fehler 
passieren aber innerhalb der Zyklen an unterschiedlichen Stellen. Somit 
können sie meiner Einschätzung nach nicht von außen provoziert worden 
sein.

Das Lesen startet mit nur einer Adressangabe zu Beginn des Bereiches, wo 
die Daten des Fonts abgelegt sind und es werden für eine GLCD-Seite 488 
Bytes am Stück gelesen und aufs GLCD kopiert.

mit freundlichem Gruß

von Einer K. (Gast)


Lesenswert?

Christian S. schrieb:
> Nun die triviale Frage:
> Hatte schon jemand einen solchen Schaden an einem EEPROM beobachten
> können?

Ich nicht!

Klar, gabs bei mir auch schon mal Daten am falschen Ort.

Aber bis jetzt fand sich der Fehler immer in "OSI Schicht 8".

von Christian S. (roehrenvorheizer)


Lesenswert?

Schon mal danke für die Antwort. Bis jetzt bleibt das EEPROM unschuldig.

MfG

von Einer K. (Gast)


Lesenswert?

Christian S. schrieb:
> Bis jetzt bleibt das EEPROM unschuldig.

Sehe ich auch so!

Du schreibst offensichtlich über Page Grenzen hinweg.
Daran glaube ich solange, bis du mir das Gegenteil beweist.

von MWS (Gast)


Lesenswert?

Christian S. schrieb:
> EEPROM-Exemplare, da genau diese beiden hier
> Beitrag "Kein ACK mehr am 24LC1025"
> bereits für Wirbel sorgten.

Der verlinkte Thread endete damit, dass Dir zusammen mit meiner 
Wenigkeit zwei Leute geschrieben haben, dass Deine Soft-I2C Routinen 
womöglich Murks sind.

Statt des normalen Verhaltens eines Fragestellenden, nämlich die 
fraglichen Routinen zur Überprüfung zu posten, kam da von Dir nichts 
mehr.

Und jetzt jammerst Du schon wieder herum, verdächtigst die arme Hardware 
und beschreibst Fehler und Softwareverhalten in Prosa. Denkst Du nicht 
dass es Zeit wäre darüber nachzudenken, ob Du was falsch machst und ob 
diese Materie für Dich wirklich die richtige ist?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.