PROMEL 6064 - EPROM Emulator

ELTompa
Inlägg: 388
Blev medlem: 27 februari 2017, 22:13:28
Kontakt:

PROMEL 6064 - EPROM Emulator

Inlägg av ELTompa »

PROMEL 6064 - EPROM Emulator
Efter ha provkört min gamla och egenutvecklade CRED 6809 utvecklingsplattform från sent 80-tal så triggas lust att kanske göra ett bygge i dess anda. Men ska man få fart på nått sånt så skulle en EPROM emulator vara till god hjälp. Jag vet att jag hade en Dataman S3 på den tiden som både kunde bränna och emulera EPROMar. Vore kanske bättre att bara köpa någon rustik sak på Tradera som kan detta el motsvarande. Har sett att efterföljaren Dataman S4 ibland dyker upp.

Eller så bygger man själv en mojj bara för att det är ett kul projekt helt enkelt
Det låter som ett ganska kul projekt och det viktigaste är kanske inte att kunna bränna EPROMar utan att kunna emulera dom. Det var det som var grejen med S3an så jag fokuserar mina tankar på den funktionen.

Går det att få tag i viktiga delar?
Måste kolla först att det går att få tag i viktiga delar så att projektet kommer bli som jag föreställer mig.
  • Det ska ju vara en sån där kabel med klämd DIP28 kontakt som kan kontaktera där EPROMet normalt sitter. AliX = CHECK!
  • Det behöver finnas en ZIF 28p så att man kan läsa av befintliga EPROM. Eget Lager = CHECK!
  • Kretskortkontakt så man kan skilja emulatorn från kabeln och byta den vid behov. Electrokit CHECK!
Bild

Det verkar också finnas gamla EEPROMar som skulle kunna passa måldatorn som ett alternativ till att bränna EPROM. Även en del FLASHPROMar man kan fixa med adapters så visst går det att hitta den Flinta-teknik som behövs för projekt som är i behov av en EPROM emulator.
Tänker mig ett koncept baserat på en PIC MCU. Tycker dom är roliga att jobba med och jag tycker jag kan Midrange 8-bitarsmodellerna ganska bra. Varför inte förnya sig och ta en ny modernare variant.
Mojjen ska köra RS232 till datorn och behöver kunna ta emot och sända Motorola S1 HEXfiler. Mina gamla 6809 projekt brukade köra XON-XOFF så det skulle man ju kunna knöa in i PICen.
Ja å sen kanske man ska göra den 3v3 kompatibel ifall det skulle komma lite modernare alternativ än HMOS från 70-talet :D

Funderar också lite på den mekaniska utformningen, kanske en 3Dprintad låda typ nått sånt här

Bild

Jag ritar på ett schema utifrån detta. Det blir ju en hel del grejjor.

Bild

Jag brukar ju bygga en prototyp först men denna är för trasslig att tråda upp på verokort så jag ritar ett mönsterkort istället och beställer.

Noll kända fel
Brukar vi säga när en kortbeställning lagts. Känns alltid bra!

Bild
.
ELTompa
Inlägg: 388
Blev medlem: 27 februari 2017, 22:13:28
Kontakt:

Re: PROMEL 6064 - EPROM Emulator

Inlägg av ELTompa »

Mönsterkort hemma på rekordtid - Tack JLCPCB
Då ere bara att börja bygga. Jag funderar en stund, detta är ju ett prototypkort. Så det är nog bästa att bygga del för del och prova på resans gång att allt är som det ska.
jag börjar med att bygga DC-DC 5V kretsen. Den fungerar direkt som den ska. Bygger därefter på med 3v3 LDOn och den funkar också fint

Bild

Riggar för att göra belastningsprov. Jag vet inte riktigt hur mycket grejjorna kommer att dra. 5V DCDCn är tänkt att Max ge 1A men så mycket tror jag inte kommer behövas.
Huvuddelen av elektroniken kommer gå på 5V. Det enda som kan komma köras på 3V är utgångsbufferten, den som låtsas vara EPROMet. Men som standard går den ju också 5V.

Bild

Jag belastar 5V med 0.8A och 3V3 med 0.15A. Kollar med värmekameran och temperaturerna överstiger inte 70C, det känns bra

Bild

Inget nämnvärt rippel eller annat på utgångarna.

Bild

Denna del funkar fint!
ELTompa
Inlägg: 388
Blev medlem: 27 februari 2017, 22:13:28
Kontakt:

Re: PROMEL 6064 - EPROM Emulator

Inlägg av ELTompa »

Nästa steg, att få fart på MCUn
Till detta projekt väljer jag en modernare Midrange PIC än dom jag jobbat med förut. Varför... Ja mest på kul och för att lära sig mer och nytt men ändå en som är relativt lik. Det är ju det som är så härligt med den här hobbyn, det kommer nya komponenter man kan prova. Valet blir en PIC16F19176.

Bild

Jag passar på att uppgradera mitt PICkit till nr5

Bild

En grej som jag aldrig blir riktigt överens om med MPLAB X IDE/IPE är det här med valet att strömförsörja target från PICKIT-lådan. jag vill strömförsörja mina kopplingar från egen nätdel. Man vet aldrig va som kan hända med sånt man byggt själv och jag vill inte bränna PICKIT-lådan. Fine, det finns en inställning för det så den aktiverar man ju. Men då serru får man felmeddelandet att Target inte är stömsatt och då tänker inte MPLAB fortsätta ladda kod och köra program. För någon utvecklare på MPLAB har bestämt att det ska minsann kollas att det finns VDD och vill därför att jag kör in min strömförsörjning i PICKIT-lådan, vilket jag inte vill.

Bild

Så lösningen får alltid bli att ställa in MPLAB på att strömförsörja från PICKIT-lådan men jag klipper av VDD sladden så ingen ström kan flyta den vägen. Det hela känns helt bakvänt men så får det vara för då går det mycket riktigt att ladda kod och köra debuggern utan felmeddelande.

Bild

Men vad har dom gjort med Assemblern?
Jo från version 6 eller så har stödet för MPASM upphört och nu måste man koda enligt XC8 asm. OK det blir till att lära nytt. All gammal kod måste skrivas om en hel del för att funka. Framtiden får utvisa hur bra det känns. Just nu bara ovant. Det tar typ 3timmar att få den enklaste kod i världen att 1. Assemblera. 2. Exekvera korrekt.
Men skam den som ger sig och nu har jag en fullt fungerande MPU med utvecklingsmiljö som tillåter att jag skriver och laddar kod som funkar även om den första koden är så banal att den bara genererar en fyrkantvåg ut.

Så nu funkar även detta steg av PROMEL-prototypen

Bild
.
Användarvisningsbild
hcb
Moderator
Inlägg: 5762
Blev medlem: 23 februari 2007, 21:44:50
Skype: hcbecker
Ort: Lystrup / Uppsala
Kontakt:

Re: PROMEL 6064 - EPROM Emulator

Inlägg av hcb »

Detta är lika snyggt och väldokumenterat som vanligt. 9/5 klippta VDD-sladdar i betyg :tumupp: :tumupp: :tumupp:
ELTompa
Inlägg: 388
Blev medlem: 27 februari 2017, 22:13:28
Kontakt:

Re: PROMEL 6064 - EPROM Emulator

Inlägg av ELTompa »

Få fart på UARTen
Då är det dags för att testa RS232 drivkretsen. Den bjuder inget motstånd utan levererar +-9VDC när den får +5V att köra på.

PICen bjuder på mer motstånd. Ja eller det är ju jag som inte lärt mig varken XC8 asm eller den nya MCUn ännu. Det tar lite tid att förstå det här med PSECT och hur dessa ska användas. Men det bli mycket enklare när jag fått igång generering av .lst fil så man kan prova och se var saker allokeras i minnet. Det här med relocaterbar kod är jag helt för men i dessa små PICar där jag ändå inte tänkt annat än att ladda på en fast kod så känns det något överambitiöst.

Bild

PROS/CONS med nya MCUn och XC8asm
+ Inget bankat programminne
+ 32MHz klocka utan PLL. Det har ioförsig inte varit ett problem förutom att man måste vänta lite på PLLen att svänga in. Sån kod behövs inte längre.
- Innan Periferals kommer ut så måste man sätta upp pinassigment via kod. Jag trodde ett tag att de fanns en "default" som gällde med för UARTen så kom det inte ut någon TX förens jag mappat upp en portpinne. Detta är kanske inte något dåligt tekniskt utan mer en otydlig dokumentation. Jag upplever generellt att databladet ger utrymme för tolkningar i högre grad än för äldre MCUer. Eller så är det bara jag som läser dåligt :)
- XC8asm stödjer inte att infoga strängar som constanter i programminnet utan man måste dela upp dom i en radda bytes alá 'M','y',' ','s','t','r','i','n','g',0 Det här är ju en rejäl försämring gentemot MPASM

Men tillslut så får jag igång UARTen. Då ser jag att jag glömt vända på RS232 TX/RX. Trots att jag ritat dom korsat på schemat för att fixa till de så missade jag det.
Men nu så rapporterar PICen som den ska till Terminalen

Bild
ELTompa
Inlägg: 388
Blev medlem: 27 februari 2017, 22:13:28
Kontakt:

Re: PROMEL 6064 - EPROM Emulator

Inlägg av ELTompa »

Det saknade stödet för att deklarera const strings stör mig
Alltså det här att det inte i XC8asm går att deklarera strängar som konstanter i programminnet retade jag mig på igår. Kanske jag har missat läsa på något men jag orkar inte leta mer i frågan. Den här applikationen kan behöva ett gäng strängar/texter för att prata via RS232 så jag kan inte hålla på att skriva kommaseparerade bytes inom fnuttar. Jag kommer bli galen på det!!

så jag skrev en preprocessor nu på förmiddagen som gör jobbet
Jag älskar Delphi. Snabbt å enkelt att skriva fullfjädrade windowsprogram i utan massa svåra frågor. Pascal är ju från början designat för att parsa strängar så det är som gjort för just att skriva denna preprocessor i. Å sen har jag ju miljön installera, bara att börja koda :) Programmet tar en infil som parameter och som innehåller strängarna i ett enkelt format. Filen editerar man i IDEn. Hmm, editorn verkar vilja rättstava min nya fil. Kanske skulle döpt den till nått annat än .txt

Bild

Preprocessorn startar man i byggkjedjan. Då körs den nu innan man bygger.

Bild

Preprocessorn läser textfilen, spjälkar strängen till en kommaseparerad text med varje char inom fnuttar och lägger på en Noll-terminator.

Bild

I koden lägger man in en include som tar in resultatfilen i koden.

Bild

Efter bygget ser man resultatet i .lst filen

Bild

och laddar jag på koden på Target så skriver den snällt ut min sträng. Inkl "ö". Den är bara tänkt att skriva ut std ASCII så man ska nog hålla sig till det.

Bild

Funkade ju såå bra! Nu behöver jag inte störa mig på detta mer.

Edit
Blev ju helt klart bättre ge strängfilen efternamnet .inc så blev den färgkodad bra och ingen påtvingad engelsk rättstavning :)

Bild
.
Skriv svar