Arduino Eprom Brenner für mcm68766 Eproms

daybyter

Leidenschaftlicher LTspicer
Member
Hallo!

Einige haben vielleicht schon den Thread zu den Eprom Spannungen gesehen.

Was bastel ich also?

Einen Eprom Brenner für Motorola mcm68766 Eproms. Diese Eproms sind u.a. pinkompatibel zu den c64 und Vc 20 Roms, und können leider von den meisten aktuellen Brennern nicht beschrieben werden, weil sie 25 V Brennspannung verlangen.

Ich bastel also gerade an einem günstigen Brenner auf Arduino Basis und werd jetzt hier mal so nach und nach meinen Stand hochladen. Braucht alles noch bisserl Arbeit, aber so nach und nach kommt doch alles zusammen.

Als Erstes attach ich mal meinen aktuellen Stand des Arduino Sketches.

Anhang anzeigen mcm68766_brenner.zip

An der Host Software für Linux schraub ich gerade noch bischen. Einen kompletten Schaltplan muss ich auch noch liefern.

Ciao,
Andreas
 

daybyter

Leidenschaftlicher LTspicer
Member
So...ganz langsam robbe ich mich an die Fertigstellung des Projekts ran. Heute mal wieder ne Weile gelötet und seit Gestern läuft auch mal eine erste Version der PC-Software. Attach ich mal, falls jemand schauen möchte.
Im Sketch hab ich die Blockgrösse von 1024 Byte auf 512 Byte verkleinert, damit ich mit 1kb Ram auskomme. Die Idee war, dass man dann auch die billigeren Nanos mit Atmega 168 nehmen kann.

Anhang anzeigen mcm_brenner.zip
 

daybyter

Leidenschaftlicher LTspicer
Member
Endlich dazu gekommen, mal den Prototyp fertig zu löten. Jetzt nochmal alles durchchecken, und dann kann man mal vorsichtig mit Eproms testen.

IMG_20170526_223432.jpg

IMG_20170526_223454.jpg
 

daybyter

Leidenschaftlicher LTspicer
Member
Erster Versuch eines Schaltplans. Ich steh immer noch auf Kriegsfuss mit dem Eagle... :(

Und was ich mit dem Stepup in der Schaltung mach, weiss ich auch noch nicht. Wenn man eine Platine machen würde, müsste man die Einzelbauteile wohl einzeln in die Platine integrieren. Andererseits sollte das Ding ja lowcost sein und das ganze kostet fertig aufgebaut ein Drittel der Bauteilkosten, die ich gefunden hab... :(

sch Files, also Schaltpläne kann man wohl nicht direkt hochladen, also hab ich es in ein Zipfile gepackt.
 

Anhänge

Paul

Aktiver Benutzer
Member
Sorry das ich erst jetzt antworte. Hab den Entwurf gerade erst gefunden.
Hast du daran noch weiter gemacht?
Der verlinkte Schaltplan ist so nicht brauchbar. Das mit dem Eagle Kriegsfuss scheint zu stimmen;-)
Wenn du magst helfe ich dir den Schaltplan in Eagle benutzbar zu machen und eine Platine zu erstellen.
Mich interessiert das Thema auch wegen alten 4K Eproms.
Liebe Grüße
Paul
 

spicer

Administrator
Teammitglied
Administrator
Habe das Target3001 smart.
Kann den zwar importieren, Target hat allerdings Mühe mit offenen Leitungen.
Was ist zBsp mit SCK und RCK an IC1A?
 

spicer

Administrator
Teammitglied
Administrator
Aha, darum hab ich mich gewundert, warum Target plötzlich viele Pins verbindet ^^
Danke für den Hinweis.

PS: Auch die zusammengefasten Leitungen machen Mühe.....
 

daybyter

Leidenschaftlicher LTspicer
Member
Hallo!

Ja, da habt ihr wohl recht. Das größte Problem für mich waren aber die fehlenden Bauteile im Eagle. Z.B. der Stepup. Aber da heissen sich vielleicht auch 2 Ziele.
Mein oberstes Ziel war einfach eine billige Option zu schaffen die alten Eproms zu brennen, weil die pinkompatibel zu vc20 und c64 Roms sind. Da gibt es aktuell halt nur entweder alte Brenner für c64 und Co, oder aber sehr teure Brenner.
Würde man eine ordentliche Platine machen, sollte man eigentlich die Bauteile vom Stepup z.B.direkt auf die Platine setzen. Mein Googeln hat mir aber gezeigt, dass die Einzelteile sehr viel teurer waren als eine komplette Stepup Platine aus China? Deshalb diese etwas seltsame Konstruktion mit der Stepup und Arduino Platine auf dee Brennerplatine.
Der Brenner liegt eigentlich fertig zum Testen hier. Will nochmal die Verbindungen checken, und ihn dann nochmal ans Oszi hängen, um die Brennspannung zu checken.
Bin nur gerade mit Programmierarbeit eingedeckt und muss mir jede freie Minute erkämpfen. ;(

Würde mich aber sehr über jede Mitarbeit freuen!

Ciao,
Andreas
 

Paul

Aktiver Benutzer
Member
Also bei mir liegt der Focus meist darauf das jeder User das einfach nachbauen kann.
Daher scheidet SMD meist aus. Da die meisten breakout boards aber SMD beinhalten definiere ich meist die Pin header in Eagle und stecke die Breakout boards auf.
Das ist einfacher und preiswerter als die Breakout boards nachzubauen.
In sofern halte ich deine Lösung eigentlich für gut.
Wenn du die Pins prüfen möchtest, wie wäre es dann wenn du eine Verbindungsliste (excel oder notepad) machst und dort alles abhakst? Dann könntest du mir die Verbindungsliste zuschicken und ich mache einen Eagle Schaltplan mit korrekten Verbindungen. Oder deinen bisherigen Papier Schaltplan als Foto reicht auch.

Liebe Grüße
Paul
 

daybyter

Leidenschaftlicher LTspicer
Member
Ist das korrekt, dass die Pins 12,13,18 des Arduino und 10,11,12 des IC1A nicht angeschlossen sind?
Im Anhang eine überarbeitete Version in Target. Wenn Du die vllt mal anschauen würdest......
Arduino Pin

12 ist 5V und der VCC Ausgang, weil die Spannung ja von USB kommt
13 ist Reset, den ich nicht belegt hab, weil der Arduino ja den Reset Knopf drauf hat
18 genauso

IC1A hab ich hier nicht? Nur IC 1? Meinst das?

Da muss Pin

10 ist Master Clear, was ich bei beiden Schieberegistern nicht benutzt hab
11 auch mit dem Arduino Clock Pin verbunden sein
12 ist der Latch Pin und muss bei beiden Schieberegistern mit dem Latchpin des Arduino verbunden sein (Pin 8).

Lade gleich mal nen modifizierten Plan hoch. Danke für die Hinweise!
 

Anhänge

Zuletzt bearbeitet:

daybyter

Leidenschaftlicher LTspicer
Member
Paul: noch eine Frage: dass die Pins von dem Bus kurzgeschlossen sind, liegt doch nur an der falschen Benennung der Anschlüsse an den IC Pins, richtig? Dort muss ich für jedes Bussignal den richtigen Namen finden. Dann sollten es doch gehen?
 

spicer

Administrator
Teammitglied
Administrator
Arduino Pin

13 ist Reset, den ich nicht belegt hab, weil der Arduino ja den Reset Knopf drauf hat
18 genauso

IC1A hab ich hier nicht? Nur IC 1? Meinst das?

Da muss Pin

10 ist Master Clear, was ich bei beiden Schieberegistern nicht benutzt hab
11 auch mit dem Arduino Clock Pin verbunden sein
12 ist der Latch Pin und muss bei beiden Schieberegistern mit dem Latchpin des Arduino verbunden sein (Pin 8).

Lade gleich mal nen modifizierten Plan hoch. Danke für die Hinweise!
Das ist meine Frage. Ist der Reset inaktiv, wenn die offen sind (TTL ist ein offener Eingang = High-Signal). Nebenbei meine Überlegung: Wegen dem NOT Eingang wäre H-Signal dann ein "Nicht-Reset"?

Das Importieren der Eagleschaltung ins Target hat mir IC1A und IC1B ergeben ^^
 

Paul

Aktiver Benutzer
Member
Paul: noch eine Frage: dass die Pins von dem Bus kurzgeschlossen sind, liegt doch nur an der falschen Benennung der Anschlüsse an den IC Pins, richtig? Dort muss ich für jedes Bussignal den richtigen Namen finden. Dann sollten es doch gehen?
Wenn du den BUS z.B. wie folgt benennst: A[0..7] dann stehen dir beim Verbinden mit den grünen Leitungen beim Rechtsklick die Signale A0, A1 ... A7 zur Verfügung. So stellst du sicher das an jedem Pin das richtige Signal liegt.
Bei dir liegen am MCM68766 an Pin 1..8 immer B$1 an, daher werden die zusammen geschaltet.
Man kann auch die Leitungen einzeln mit NAME verändern, aber das korrekte Benennen des Busses vereinfacht das doch erheblich.
Liebe Grüße
Paul
 

daybyter

Leidenschaftlicher LTspicer
Member
Das mit dem Bus umbennen hab ich nun gemacht. Am Eprom ging das auch.

Nun versuch ich das am Schieberegister. Mach ich dort ne Verbindung zum Bus, nennt er die N$15. Versuch ich den Namen in den Eigenschaften auf A0 zu ändern, weigert er sich, weil A0 schon existiert (stimmt: am Eprom halt) und sagt, dass ich Name benutzen soll um Netze zu verbinden. Also nehm ich Name und er fragt, ob er nun N$15 mit A0 verbinden soll. Sag ich Nein, klappt das Umbennen nicht. Sag ich aber Ja, werden N$15 und A0 verbunden.
Der nächste Pin heisst nun aber auch erstmal N$15. Verbinde ich den auch mit Name mit A1 sind eben wieder A0..A7 mit N$15 verbunden und damit kurzgeschlossen.

Irgendwas mach ich falsch...aber was?

Edit: Aaaargh! Ich habs! Ich muss Net statt Wire nehmen!

TIA,
Andreas
 

Benutzer welche diesen Thread betrachten (Mitglieder: 0, Gäste: 2)

Benutzer welche auf diesen Thread geantwortet haben: 2 Sehe alle

Themenersteller Ähnliche Themen Forum Antworten Datum
D Beta Bereich 76
Oben