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


von Paul (Gast)


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 ;)

von Benedikt (Gast)


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.

von josef (Gast)


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

von josef (Gast)


Lesenswert?

Bitte keine Pulldowns sondern Pullups verwenden !


SG Josef

von Paul (Gast)


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

von josef (Gast)


Lesenswert?

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

SG Josef

von Thomas O. (Gast)


Angehängte Dateien:

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.

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.