Arduino EEPROM Programmer, kann zwar lesen, aber nicht schreiben

OP #6138445
Hi!
Ich möchte mit einem Arduino UNO einen AT28C256 EEPROM programmieren. 
Mein Grundlegender Aufbau ist der folgenden.
EEPROm Pins:
Chip Enable: geerdet
Output Enable: mit einem Digitalpin des Arduino verbunden.
Write Enable: mit einem Digitalpin des Arduino verbunden.
Addresspins: über 2 CD4015 Schieberegister mit dem Arduino verbunden 
(ja, die haben keinen Latch, dürfte aber mit meinem code theoretisch 
kein Problem darstellen)
IO Pins: Direkt an Arduino Digitalpins.
Auf meinem Arduino läuft der angehängte Sketch, welcher versucht, eine 
Adresse zu beschreiben. Was leider nicht klappt: Wenn man die gerade 
beschriebene Adresse direkt danach liest, bekommt man nur ff zurück.
Ich hab alle Teile des Aufbaus gründlich getestet: An den Adresspins 
wird die richtige Adresse eingestellt, Output und Write Enable können 
gesteuert werden und die Digitalpins, die zu den IO Pins führen, werden 
richtig eingestellt. Trotzdem wird der EEPROM nicht beschrieben und ich 
kann das Problem einfach nicht finden. Wäre super wenn jemand von euch 
mit ein bisschen mehr Ahnung mir helfen könnte :)

PS: Hab gelesen, dass es möhlicherweise an SDP liegen könnte und 
versucht, diese abzuschalten - ohne Erfolg

EDIT: Bin bei meinem Aufbau so ungefähr diesem Video gefolgt: 
https://www.youtube.com/watch?v=K88pgWhEb1M
Angehängte Dateien:
Gast
Moritz T. schrieb:
> Wäre super wenn jemand von euch
> mit ein bisschen mehr Ahnung mir helfen könnte

Wäre super wenn du durch einen klaren Schaltplan uns Klarheit
in deinen "Versuchsaufbau" bringen könntest.

Mit Schaltplan ist auch Schaltplan gemeint, nicht Foto vom
Aufbau oder Ähnliches.
OP
Also ich bin mir relativ sicher, dass der Chip Enable Pin permanent 
geerdet werden darf, dass Datenblatt gibt ja (wie peda schon sagte) tCS 
als Minimum an. Electro-Man sagt, dass ich SDP enablen muss. Würde das 
das Beschreiben nicht eher verhindern? Ab Werk ist SDP ja aus (obwohl 
man im Internet auch von Fällen liest, bei denen es versehentlich an war 
und erst abgeschaltet werden musste. Was ich versucht habe).
Und um das, was jar geschrieben hat zu verstehen reicht mein 
arduinowissen leider nicht aus...
Aber vielen Dank schonmal für die ganzen Antworten :)
OP
Also die einzigen Unterschiede die ich zwischen dem Projekt und meinem 
erkennen kann, sind dass der ein anderes Delay hat und dass der keine 
Shiftregister verwendet. Das andere Delay hab ich erfollos ausprobiert, 
also ist das Problem wohl auf die Shiftregister lokalisiert. Woran genau 
es liegen könnte, weiß ich aber nicht. sowohl sein WE als auch meiner 
wird erst nach dem einstellen der Adressen getriggert...

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 6 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.