mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik EEPROM lesen / schreiben ?! Ein einziges Chaos !


Autor: Paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nabend.
Ich hab jetzt seit 3 Tagen nichts anderes gemacht, als zu versuchen,
Daten in einen EEPROM zu lesen und in selbigen zu schreiben. Leider
bisher recht erfolglos.
Der EEPROM ist ein AT28C16-15PI (2kB)

Zum Schreiben: Ich hab mir eine Schaltung mit Schieberegistern gebaut,
welche eine Seriell übertragene Adresse (11 Bit) in Parallele Daten
umwandelt. Eine Software hab ich dazu auch geschrieben. Zuerst wird die
Adresse, dann das Datenbyte angelegt und zuguterletzt wird der /OE-Pin
auf High gesetzt. /WE und /CE sind auf GND. Nach einem kurzen Delay
wird dann das /WE-Bit wider auf Low gesetzt, und die nächste Adresse
ist dran. An den Adressleitungen hab ich 10k Pulldows hängen.
Ich hab alles mit nem Pegeltester ausprobiert, die Daten & Adressbits
liegen korrekt am EEPROM an.

Zum Lesen: Ich hab an den Adressleitungen 4,7k Pulldowns dran, /WE ist
High, /OE und /CE sind Low. Doch leider bekomme ich als Output immer
nur FFh, also alle 8 Pins sind High. Und das bei jeder Adresse, obwohl
ich in jede Adresse einen anderen Wert geschrieben hab (oder zumindest
denke ich, dass ich das gemacht hab)

Gibt es da einen besonderen Trick, oder irgendetwas kritisches zu
beachten beim Lesen/Schreiben ? Ich bin hier echt am verzweifeln

Ich hoffe ihr könnt mir helfen ;)

Autor: Benedikt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Versuch es mal mit einem SRAM (z.B. 6116) anstelle des EEPROMs. Der
müsste Pinkompatibel sein. So kanst du immerhin schonmal ausschließen,
dass deine Hardware/Software die Grundlegende Ansteuerung nicht
schafft.

Autor: josef (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stimmt dein Timing ? Schreibvorgang:

/OE auf High. /CE auf low. /WE auf high. Adresse und Daten anlegen. /WE
für ca 25 ms auf low. /WE auf high. Fertig.
Sieh dir das Datenblatt an !


SG Josef

Autor: josef (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bitte keine Pulldowns sondern Pullups verwenden !


SG Josef

Autor: Paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nabend.

Danke erstmal für die Antworten, ich werde ihnen morgen nachgehen.
Und das funktioniert genauso mit Pullups ? 4,7k sind ok ?

Also ist tatsächlich das Timing so kritisch...25ms, mal sehen wie genau
ich das hinbekomme

Autor: josef (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
4K7 müssten gehen. Besser wären 10K und auf alle Fälle gegen plus.

SG Josef

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

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ist dein kein 5 Volt EEPROM? Sollte doch absolut kompatibel sein.
Ich werde die Tage das ganze mit einem AT29C010 machen, Aber statt
Schieberegister werde ich Latches nehmen, da ich die dann einfach über
einen Selectanschluß ansprechen kann und die Übertragung parallel
erfolgt. so kann ich mit einem Bus alle Latches ansprechen.

Die Beschreibung ist zwar für die C-Control geht aber mit nem AVR
genauso.

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.