Forum: Mikrocontroller und Digitale Elektronik Alter EPROM M27C512 Lese- und Programmiergerät mit ESP32


von Daniel S. (d_s)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,
ich möchte einen alten UV EPROM M27C512 mit einem ESP32 auslesen und neu 
programmieren.

Hintergrund: der auszulesende EPROM war in einem AVM A2 eingebaut als 
Programmspeicher verbaut und weil dessen Fenster nicht abgeklebt war, 
vermute ich über >20 Jahre Betrieb einen Fehler (Bitkipper). Da ich ein 
baugleiches Geräte habe, möchte ich von diesem Auslesen und den 
vergleichen/ neu programmieren. Siehe Beitrag: 
Beitrag "Verstärker AVM A2 Problem mit Reset"

Die Schaltung selbst ist wegen den verschiedenen Spannungslevel etwas
aufwändig.

Zur Schaltung:
- Mikrocontroller ESP32 DevKit C (Programm muss ich dazu aber noch 
schreiben ("PRESTO IIB")
- Schieberegister für die Output Erweiterung (Adressansteuerung und
weiteres)
- Level Shifter 3.3V <-> 5V/6V (je nach Lese/Schreibmodus)
- ein paar Jumper für die verschiedenen Modi
- PSU mit Boost IC für 12.75V und 6V (Schreiben) sowie ~12.3V über Diode
für Signatur (über A9 zum Testen)
- EPROM M27C512

Könnte das so funktionieren wie gezeichnet?

Verbesserungsvorschläge?

Beispielsweise wird der Level Shifter TXS0108EPW für die Ausgänge des 
EPROM mit 6V am absoluten oberen Limit betrieben.

von H. H. (hhinz)


Lesenswert?

Ziemlich viel Aufwand für ein einziges EPROM. Hast du denn die Teile 
alle auf Lager?

von Daniel S. (d_s)


Lesenswert?

Leider nichts wirklich auf Lager.
Muss die Platine noch routen, dann bestellen und dann bei die Teile 
bestellen und SW Schreiben. Ist echt ein großer Aufwand.

Aber eben auch sehr Schade, wenn wegen dem EPROM der Verstärker nicht 
mehr zu nutzen wäre.

von Helmut -. (dc3yc)


Lesenswert?

Dann könnte man ja auch jemanden fragen, der so einen Programmer hat, ob 
der das Auslesen und Programmieren übernehmen kann. Bei mir müsstest du 
nur das Porto übernehmen. Entsprechende Rohlinge hätte ich auch da.

von Thomas S. (Firma: Chipwerkstatt) (tom_63)


Lesenswert?

Hold Dir lieber einen Galep III. Auspacken, einstecken, geht.

von H. H. (hhinz)


Lesenswert?

Thomas S. schrieb:
> Hold Dir lieber einen Galep III. Auspacken, einstecken, geht.

Läuft der denn mit einem USB/Parallelport-Kabel?

von Harald K. (kirnbichler)


Lesenswert?

H. H. schrieb:
> Läuft der denn mit einem USB/Parallelport-Kabel?

Fiese Frage. Damit hat sich Henrik Haftmann mal ausführlich beschäftigt 
...

Ein TL866 ist vermutlich die einfachere Lösung. Oder halt jemand aus dem 
Forum, der Dir das Eprom kopiert.

Wenn Du freundlich in die Runde fragst, findet sich vermutlich jemand.

von Thomas W. (datenreisender)


Lesenswert?

Hier im Forum fragen waere sicherlich nicht verkehrt. Aber wenn es sein 
muss, Aliexpress verkauft TL866 fuer ca. 70EUR (Hausnummer), da wuerde 
ich keine Schaltung/Platine/Software entwickeln.

von Rainer W. (rawi)


Lesenswert?

Daniel S. schrieb:
> Könnte das so funktionieren wie gezeichnet?

Wofür der Aufwand mit dem Levelshifter für die Adressen (U5, U6)?
Wenn du für die Adress-Schieberegister (U7,U8) 74HCT595 einsetzt, können 
die die Pegelwandlung mit übernehmen.

von Thomas W. (datenreisender)


Lesenswert?

Bist Du Dir eigentlich sicher, dass es an dem EPROM liegt (Tausch gegen 
funktionsfaehiger EPROM)? Denn es sind ja noch weitere Bauteile 
vorhanden, die altern koennen (z.B. Elkos).

von Anton (antang)


Lesenswert?

Für so etwas habe ich mal ein ATmega2560-Entwicklungsbrett genommen. 
Keinerlei zusätzliche Bauteile nötig (ein Abblockkondensator ist aber 
vielleicht eine gute Idee), nur triviale Software. 12,75 V fürs 
Programmieren aus dem Labornetzteil.

von Thomas P. (topla)


Lesenswert?

Harald K. schrieb:
> Wenn Du freundlich in die Runde fragst, findet sich vermutlich jemand.

Und wenn Du Deinen Standort mit dazu schreibst, besteht eventuell die 
Möglichkeit, das direkt vor Ort zu erledigen, ganz ohne Versandkosten 
und -zeit.

Thomas

von Sebastian R. (sebastian_r569)


Angehängte Dateien:

Lesenswert?

Bevor du komplett was eigenes entwickelst für ein einziges EPROM, schau 
dir mal den TommyPROM32 an:

https://github.com/TomNisbet/TommyPROM/

Ich müsste (ganz eventuell) sogar noch eine Leiterplatte irgendwo 
haben...

: Bearbeitet durch User
von Frank K. (fchk)


Lesenswert?

Heutzutage würde ich mir den Aufwand sparen und einfach ein 
pinkompatibles Flash verwenden. 29C512 oder so.

von Kilo S. (kilo_s)


Angehängte Dateien:

Lesenswert?

Der T48 sollte den auch können.

Im Raum Düsseldorf könnt ich aushelfen.

von Thomas S. (Firma: Chipwerkstatt) (tom_63)


Lesenswert?

@Daniel
Wo bist Du denn daheim?

von H. H. (hhinz)


Lesenswert?

Frank K. schrieb:
> Heutzutage würde ich mir den Aufwand sparen und einfach ein
> pinkompatibles Flash verwenden. 29C512 oder so.

27C512 ist in DIP-28, 29C512 in DIP-32. Man müsste ein Adapter 
anfertigen.

von Harald K. (kirnbichler)


Lesenswert?

H. H. schrieb:
> Man müsste ein[en] Adapter anfertigen.

Immer noch weniger Aufwand, als einen EPROMer komplett neu zu 
entwickeln.

von Old P. (Firma: nix) (old-papa)


Lesenswert?

Thomas W. schrieb:
> Hier im Forum fragen waere sicherlich nicht verkehrt. Aber wenn es sein
> muss, Aliexpress verkauft TL866 fuer ca. 70EUR (Hausnummer), da wuerde
> ich keine Schaltung/Platine/Software entwickeln.

Den TL866 würde ich nicht mehr kaufen, der wird schon lange nicht mehr 
supportet. Nachfolger sind TL866 II Plus (habe ich), der TL866-3G (XGecu 
T48) oder der XGecu T56.

Ich könnte Dir die Dinger auch überprüfen/neu brennen. "Brenner" habe 
ich noch ein paar andere im Regal.
27C512er müssten auch noch ein paar Stangen da sein....

Old-Papa

: Bearbeitet durch User
von Daniel S. (d_s)


Lesenswert?

Rainer W. schrieb:
> Daniel S. schrieb:
>> Könnte das so funktionieren wie gezeichnet?
>
> Wofür der Aufwand mit dem Levelshifter für die Adressen (U5, U6)?
> Wenn du für die Adress-Schieberegister (U7,U8) 74HCT595 einsetzt, können
> die die Pegelwandlung mit übernehmen.

Guter Einwand, klar wenn die Schieberegister direkt auf 5V arbeiten, 
kann man sich die Level-Shifter sparen! Danke.

Thomas W. schrieb:
> Bist Du Dir eigentlich sicher, dass es an dem EPROM liegt (Tausch
> gegen
> funktionsfaehiger EPROM)? Denn es sind ja noch weitere Bauteile
> vorhanden, die altern koennen (z.B. Elkos).

Nein, bin mir leider nicht sicher, aber das Fehlerbild ist auch nicht so 
einfach. Siehe Video im verlinkten Thread. Sprodische Resets sprechen 
für mich aber eher für das Programm (also EPROM, oder µC), als für 
Elektronik.
Habe im Verstärker nur einen wirklich verschlissenen Kondensator 
gemessen, der VOR den Linearreglern. Aber WEIL der EPROM eben nicht 
abgeklebt war, vermute ich den als Defekt.

Thomas S. schrieb:
> @Daniel
> Wo bist Du denn daheim?

Komme aus dem Allgäu, bzw. München.

Wenn ich für das eine Mal nichts kaufen müsste wäre ich natürlich sehr 
froh!

von Dieter S. (hotsystems)


Lesenswert?

Daniel S. schrieb:
> Wenn ich für das eine Mal nichts kaufen müsste wäre ich natürlich sehr
> froh!

Und warum nimmst du nicht das Angebot von Helmut (Post 4) an ?
So wie ich es verstanden habe, kann er dir eins brennen.

von Thomas W. (datenreisender)


Lesenswert?

Und den Inhalt des Eproms zu lesen sollte mit einem Arduino Mega (oder 
Uno et al. + Schieberegister) auch kein Akt sein.

von Rainer W. (rawi)


Lesenswert?

Daniel S. schrieb:
> Sprodische Resets sprechen für mich aber eher für das Programm
> (also EPROM, oder µC), als für Elektronik.

Für mich hört sich das eher nach Elektronik an, z.B. Reset wegen 
Brown-Out, also nach schlechter Versorgungsspannung. Da würde ich 
erstmal ein Oszi draufhängen. Das geht schneller als ein 
EPROM-Programmiergerät zu entwickeln ;-)

von Klaus F. (klaus27f)


Lesenswert?

In Daniel S. schrieb:
>> Wo bist Du denn daheim?
>
> Komme aus dem Allgäu, bzw. München.

In München sollte es eigentlich jemanden geben, der das kann und z.B. 
einen Xgecu T48 hat.
Oder du machst einen Ausflug zu mir nach Franken.
Wir Franken haben sowas und auch Eproms auf Reserve.
Bitte PN schreiben bei Bedarf.

von Jörg R. (solar77)


Lesenswert?

Rainer W. schrieb:
> Daniel S. schrieb:
>> Sprodische Resets sprechen für mich aber eher für das Programm
>> (also EPROM, oder µC), als für Elektronik.
>
> Für mich hört sich das eher nach Elektronik an, z.B. Reset wegen
> Brown-Out, also nach schlechter Versorgungsspannung. Da würde ich
> erstmal ein Oszi draufhängen. Das geht schneller als ein
> EPROM-Programmiergerät zu entwickeln ;-)

Für mich sieht das auch nicht nach dem Eprom als Fehlerursache aus.

Ich würde die Ausgänge mal auf Kurzschluss prüfen, oder ob 
Gleichspannung an den Ausgängen anliegt.

von Michael B. (laberkopp)


Lesenswert?

Daniel S. schrieb:
> ich möchte einen alten UV EPROM M27C512 mit einem ESP32 auslesen und neu
> programmieren.

Warum zwanghaft mit so rinem ungeeigneten uC ?

Zu wenig I/O, falsche Betriebsspannung.

Warum nicht Atmega32 (Arduino Mega256) oder ein 8051 Derivat ?

Dann braucht man eigentlich GAR KEINE weitere Hardware, nur eine 
Programmierspannungsquelle.

von Helmut -. (dc3yc)


Lesenswert?

Daniel S. schrieb:
> Komme aus dem Allgäu, bzw. München.

Hatte das Angebot ja schon gemacht. Zwei Stunden nach Nürnberg, ne halbe 
Stunde lesen, brennen, quatschen und zwei Stunden zurück. So schnell 
baust du deinen Prommer nicht!

: Bearbeitet durch User
von Thomas S. (Firma: Chipwerkstatt) (tom_63)


Lesenswert?

Thomas W. schrieb:
> Und den Inhalt des Eproms zu lesen sollte mit einem Arduino Mega (oder
> Uno et al. + Schieberegister) auch kein Akt sein.

Aber das Brennen eines EProm's nicht nicht ganz trivial.

von Thomas S. (Firma: Chipwerkstatt) (tom_63)


Lesenswert?

Helmut -. schrieb:
> Hatte das Angebot ja schon gemacht. Zwei Stunden nach Nürnberg,

Da sind wir ja fast Nachbarn.

Und bei mir hätte er auch noch ne 1/2 Stunde weniger.

von H. H. (hhinz)


Lesenswert?

Thomas S. schrieb:
> Thomas W. schrieb:
>> Und den Inhalt des Eproms zu lesen sollte mit einem Arduino Mega (oder
>> Uno et al. + Schieberegister) auch kein Akt sein.
>
> Aber das Brennen eines EProm's nicht nicht ganz trivial.

Ach wo, wenn das nicht so ratzfatz wie in der Serienfertigung gehen 
muss, dann sind keine 6,5V nötig, und auch die 12,75V müssen nicht so 
genau sein.
Manche brennen selbst so ein 27C512 mit 5V und 12V, und sturen paar ms 
pro Byte.

von Thomas W. (datenreisender)


Lesenswert?

Thomas S. schrieb:
> Thomas W. schrieb:
>> Und den Inhalt des Eproms zu lesen sollte mit einem Arduino Mega (oder
>> Uno et al. + Schieberegister) auch kein Akt sein.
>
> Aber das Brennen eines EProm's nicht nicht ganz trivial.

Helmut (dc3yc) hat das Brennen fuer das Porto angeboten...

von Edi R. (edi_r)


Lesenswert?

Ich habe Daniel gerade eine PM geschickt. Ich wohne in München und habe 
einen EPROMmer (Barlino von Batronix).

von Daniel S. (d_s)


Lesenswert?

Rainer W. schrieb:
> Daniel S. schrieb:
>> Sprodische Resets sprechen für mich aber eher für das Programm
>> (also EPROM, oder µC), als für Elektronik.
>
> Für mich hört sich das eher nach Elektronik an, z.B. Reset wegen
> Brown-Out, also nach schlechter Versorgungsspannung. Da würde ich
> erstmal ein Oszi draufhängen. Das geht schneller als ein
> EPROM-Programmiergerät zu entwickeln ;-)

Der Fehler ist nicht permanent anliegend, sondern "leider" sporadisch.
Im Moment ist der Fehler nicht vorhanden.

Habe jetzt nochmal das Oszi rangehängt. In diesem fehlerfreien Zustand 
messe ich an den großen Lade-Kondensatoren vom Power Supply (nach den 
Dioden):
neg: -17V mit 175mVpp Ripple
pos: +15V mit 600mVpp Ripple

Der Lade-C des positiven Rails ist auch deutlich verschlissen, aber ich 
denke dennoch nicht, dass das die Ursache sein kann. Der Fehler 
(Reset-Schleife) ist jetzt aber auch nicht vorhanden.

Die Spannungen nach den Linearreglern wie folgt aus:
5.7V ohne Ripple
-5.7V ohne Ripple
10.8V 1Vpp (!) Ripple
-12V ohne Ripple

Der µC P87C52SFPN hat im Fehlerfreien zustand +5.04V

Obwohl die 12V nicht mehr stimmen, kann ich mir nicht vorstellen, dass 
das die Fehlerursache sein könnte.

Bevor ich auf die sehr freundlichen Angebote von euch zurück komme, 
würde ich jedoch doch den Lade-Kondensator austauschen, um das 
auszuschließen, oder?

von Thomas S. (Firma: Chipwerkstatt) (tom_63)


Lesenswert?

Daniel S. schrieb:
> würde ich jedoch doch den Lade-Kondensator austauschen, um das
> auszuschließen, oder?

Unbedingt. Matsche Elkos sind nur Ballast.

von Gregor J. (Firma: Jasinski) (gregor_jasinski)


Angehängte Dateien:

Lesenswert?

Daniel S. schrieb:
> Sprodische Resets sprechen für mich aber eher für das Programm
> (also EPROM, oder µC), als für Elektronik.
> Habe im Verstärker nur einen wirklich verschlissenen Kondensator
> gemessen, der VOR den Linearreglern. Aber WEIL der EPROM eben nicht
> abgeklebt war, vermute ich den als Defekt.

Es ist eher umgekehrt – es hört sich eher nach einem Kontaktproblem oder 
Elkos, die ihre Kapazität verloren haben. Ich persönlich würde hier 
definitiv alle Elkos ersetzen (die alten natürlich auch nachmessen, um 
letztendlich die Ursache bestimmen zu können), die CPU und EPROM aus dem 
Sockel nehmen und die IC-Fassungen und IC-Beinchen vorsichtig mehrmals 
mit Kontaktspray behandeln (es muss einige Minuten einwirken), auch alle 
Steckerkontakte der Flachbandkabel kommen als Wackelkandidat definitiv 
in Frage – hier auch beide Partner auf beiden Seiten besprühen, also 
überall dort, wo nicht verlötet ist, sondern nur gesteckt wird. Das 
Kontaktspray sollte vollständig verdunsten, bevor man erneut alles 
einschaltet – dauert ca. 15-30 Minuten. Wenn auf der Platine ein alter 
Akku verbaut ist, diesen dann auch unbedingt ersetzen – etwas ganz neues 
und qualitativ gutes nehmen oder wenn schaltungstechnisch möglich, durch 
etwas anderes, Goldcap etc, was gar nicht oder nicht so schnell 
auslaufen kann, ersetzen. Bei alten MOS-ICs ist Vorsicht geboten, denn 
sie sind deutlich empfindlicher (ESD) als die heutigen CMOS-Bausteine. 
Wenn es ein C51-Derivat ist, gibt es vermutlich auch einen 
10µF-Reset-Elko in der Nähe des Resetpins, der Reset kann aber auch mit 
einem anderen IC generiert werden und zusätzlich von dort kommen – 
deshalb unbedingt auch die ganzen kleinen Elkos messen und am besten 
gleich alle gegen neue ersetzen – wenn es die Platine auf den Fotos ist, 
dann sind es eh nur 8-10 kleine, ein mittlerer (hellblau) und zwei große 
Elkos, also relativ wenig, was in so einem Fall ersetzt werden muss.

Die EPROM-Inhalte beider Verstärker würde ich mir aber trotzdem mit 
meinem TL866CS auslesen, denn das wird man so oder so irgendwann mal 
brauchen, insbesondere dann, wenn bei einem das Fenster nicht abgeklebt 
war. Die Inhalte kann auch man mit einem HEX-Editor vergleichen, ob sie 
z.B. identisch sind oder welche Unterschiede und wo vorhanden sind. Als 
Ersatz würde ein Flash-Speicher 28/29F... besser sein, bei 27C512 passt 
es leider nicht 1:1 mit dem Gehäuse, da bei den elektrisch löschbaren 
EEPROMs die Writeleitung benötigt wird.

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

Old P. schrieb:
> Nachfolger sind TL866 II Plus

den hatte ich mal aber bei alten Eproms mit gewünschter 25V 
Programierspannung kam er aber nicht zurecht, maximal 18,xV es gab noch 
eine Umbauanleitung mit Levelshifter, aber das habe ich mir nicht mehr 
antun wollen.

von Old P. (Firma: nix) (old-papa)


Lesenswert?

Joachim B. schrieb:
> Old P. schrieb:
>> Nachfolger sind TL866 II Plus
>
> den hatte ich mal aber bei alten Eproms mit gewünschter 25V
> Programierspannung kam er aber nicht zurecht, maximal 18,xV es gab noch
> eine Umbauanleitung mit Levelshifter, aber das habe ich mir nicht mehr
> antun wollen.

Stimmt. Aber braucht ein 27C512 wirklich 25V? Ich muss mal ins Datenbuch 
schauen....

Old-Papa
So, nachgesehen:
Dieser braucht (wie viele "27C...") nur 12,5V.

: Bearbeitet durch User
von Rainer W. (rawi)


Lesenswert?

Daniel S. schrieb:
> Die Spannungen nach den Linearreglern wie folgt aus:
> ...
> 10.8V 1Vpp (!) Ripple
> ...

Bist du sicher, dass vor den 10.8V ein Linearregler sitzt?
Wo kommt dieser komische Wert her? Eine Spannung von 10.8V ist ja nun 
nicht gerade Main Stream. Ist das der Sollwert oder ein Messwert?
Wie werden die 10.8V erzeugt/geregelt und passt die Frequenz der Ripple 
dazu, wie sieht die Spannung am Eingang des Reglers aus?

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

Old P. schrieb:
> Old-Papa
> So, nachgesehen:
> Dieser braucht (wie viele "27C...") nur 12,5V.

war für mein Projekt zu groß, hätte die Dekodierung umständlicher 
gemacht und die Verkabelung im PC1500. Ich wollte nur eigene SW fester 
und dauerhafter einbringen, mit dem EEPROM ging es schief. Es hatte sich 
über die Zeit 10 Jahre oder Spannung oder power on der Inhalt so 
verändert das der PC1500 nicht mehr startete.

von Peter D. (peda)


Lesenswert?

Ich hatte mir auch mal einen Prommer mit Schieberegister gebastelt.
2 * 74HCT164 für die Adressen, 1 * 74HCT299 für die Daten und noch etwas 
Kleinvieh für die Steuerung.
Für einen 3,3V µC brauchst Du dann nur noch einen Pegelwandler zum 
Rücklesen (2 Widerstände als Spannungsteiler).
Den 27512 habe ich dann wie einen 2716 programmiert, d.h. ein 50ms 
Schreibpuls.

von Peter D. (peda)


Lesenswert?

Von den TXS0108E habe ich schon viel schlechtes gelesen. Bei der 
automatischen Richtungsumschaltung kommt es gerne mal zu Glitches.
Besser sind daher bidirektionale Treiber mit extra Richtungseingang.

von Rick (rick)


Angehängte Dateien:

Lesenswert?

Daniel S. schrieb:
> Der Lade-C des positiven Rails ist auch deutlich verschlissen, aber ich
> denke dennoch nicht, dass das die Ursache sein kann. Der Fehler
> (Reset-Schleife) ist jetzt aber auch nicht vorhanden.
Genau einen solchen Fehler hatte ich bei einem älteren Gerät mit 
Linearregler. Da traten auch sporadisch Resets auf, je nach Temperatur 
und Tageszeit. Die fehlende Kapazität des Ladeelkos war direkt auf der 
Betriebsspannung zu sehen, siehe Anhang.

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.
Lade...