mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik EEPROM 28C... so gehts! Endlich


Autor: Thomas O. (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe es endlich geschaft dieses Ding dazu zu bewegen meine Daten zu
fressen und wieder auszuspucken. Und wollte das hier mal veröffentlichen
da ich im Internet keine Anleitung gefunden habe die das Schritt für
Schritt erklärt.

Ich habe das erstmal auf einem Steckbrett mit mechanischen
Dip-Schaltern aufgebaut und den µC abgeklemmt, als nächstet wirds dann
vom µC aus gemacht. Weiterhin benutze ich nur 8 Adressleitungen und an
den I/Os habe ich noch ein Latch dranhängen um etwas mehr Strom für die
Leds zu Verfügung zu haben. Dann habe ich noch überall 10kOhm Pulldowns
dran um sichere Lowsignale zu erhalten.

Lesen:
Zum lesen schaltet man einfach CE und OE auf Low und WE auf High, dann
kann man die Adresse übermitteln und an den Ausgängen stehen die Daten
an, man muss also nicht erst die Adresse anliegen haben sondern kann
diese ändern und am Augang wird dann der abgespeicherte Wert angezeigt.


Schreiben:
Dazu bringt man die Steuerleitungen in eine Grundstellung
CE Low, OE High, WE High, dann stellt man das Byte, die Adresse ein in
die das Byte gespeichert werden soll und dann führt folgende
Schalterstellungen nacheinander aus OE High, CE Low, WE Low, WE High
Nun ist das Byte geschrieben.

Löschen:
Das Löschen des EEPROMs also mittels 12V habe ich noch nicht
ausprobiert wird aber noch folgen.

Autor: Thomas O. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

nun zum Löschen:
Dazu benötigt man 12V +-0,5V

Einzelnes Byte:
Adresse einstellen und die Steuerleitungen in folgende Stellung
bringen
CE Low, WE Low
dann 12V auf die OE Leitung geben, habe das aber noch nicht
eingezeichnet.
Das dSpeicherzelle wird mit dem Wert FF beschrieben

Ganzes EEPROM:
Eingestellte Adresse speilt keine Rolle.
WE High, CE Low
12V auf OE geben
WE Low
WE High (Low Impuls mind. 10 mSek) aber mit Dipschaltern wird man das
eh nicht schneller hinbekommen.

Was ich mich frage ist folgendes wenn ich diesen Low Impuls z.b. auf 5
Sek. verlängere wird dann das EEPROM mehrmals gelöscht so das es immer
weniger mögliche Schreibzyklen werden oder wird der Löschvorgang mit
internen Zählern durchgeführt um jede Adresse einmal zu löschen?

Autor: Thomas O. (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

hier die korrigierte Schaltung womit man wahlweise 5V zum Schreiben
bzw. 12V zum löschen an OE geben kann.

Autor: Olliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für wos sollt denn de komische Schaltung sein??

Glabst wirklich, dos do herin oan gibt der so a zeig mit da Hand
programmieren wird????

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn er so besser in der Lage ist, die Abläufe zu verstehen - warum
nicht.

Autor: Thomas O. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

nachdem die ersten Versuche mit nem µC gescheitert sind hab ichs mal so
probiert, natürlich folgt jetzt der anschluß des µC's

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm - Deine Beschreibung entspricht eigentlich nur den Timing-Diagrammen
in den Datenblättern.
Beim Anschluß an den µC mußt Du darauf achten, die Reihenfolge der
Signale einzuhalten und vor allem das Timing - ein EEPROM braucht, je
nach Typ, ein paar ms um die Daten zu übernehmen. Manche EEPROM-Typen
haben auch einen Page-Buffer, der es erlaubt, mehrere Bytes
gleichzeitig zu schreiben. Leider gibts da keine "Norm", jeder
Hersteller backt da seine eigenen Brötchen.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Was ich mich frage ist folgendes wenn ich diesen Low Impuls z.b. auf
5
Sek. verlängere wird dann das EEPROM mehrmals gelöscht so das es immer
weniger mögliche Schreibzyklen werden"


Das wird mit Sicherheit so sein.

Timings zu denen Maximalzeiten angegeben sind, müssen auch eingehalten
werden.


Ich habe mir auch mal ein Löschgerät für einen CPLD so aufgebaut, da
ich versehentlich JTAG disable programmiert hatte.

Aber ich habs auch nur einmal benutzt, da kann man es verschmerzen,
wenns 100 Löschzyklen verbraucht hat.


Peter

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.