SBC6502 - 39 - PP 3in1, PROM programmer.

By Administrator at January 20, 2020 10:10
Filed Under: SBC6502

"Nikdy nehovor nikdy" - zlaté pravidlo. Prednedávnom som písal že mám v hlave hardvérový návrh pre programátor pre pamäte PROM 74188, 74S287 a 74S571. (A nerátal som zo záujmom.) Za tých pár dní sa mi ohlásili 3 záujemcovia (2 mi písali do mailu) že im stačí schéma. Tak to ma prekvapilo a zároveň potešilo, ak je záujem tak to teda nakreslím. Včera som sa pustil do kreslenia schémy a tu je výsledok. Dúfam že teraz je to už celé jasnejšie a teda nebude problém pre tento hardvér napísať aj funkčný program.


Dopredu upozorňujem na to že sa jedná iba o schému, bez programu, na toto zapojenie sa nedá použiť program napísaný pre samotnú PROM 74188 ktorý bol už uverejnený !

(Tu v schéme je použitý iný hardvérový návrh.)

 

K uvedenému zapojeniu som dospel až prí napísaní 4.časti o programátore PROM 74188, tak nejako sa to stáva a proste ma to napadlo a tak som tam na záver článku pripísal vetičku že to viem navrhnúť ...

 

Pripomeniem:


74188   - PROM o kapacite   32x 8bit

74S287 - PROM o kapacite 256x 4bity

74S571 - PROM o kapacite 512x 4bity



Pre 74188 sa čítač bude plniť od 0÷31d (0÷1Fh). Pre 74S287 sa plní 0÷255d (0÷FFh), pre 74S571 je plnenie čítača v rozsahu 0÷511d (0÷1FFh).

 

Celé je to založené na tom že sa odlišne tvorí tvorí adresa pre pamäte (teraz to ide cez čítač 4040 - a preto sa nedá použiť pôvodný program určený pre programátor PROM 74188). Vo výsledku sú na porte A ušetrené (a teda nepoužité) celé 3 bity.


Schéma v nízkom rozlíšení pre PROM 74188, 74S287 a 74S571:

 

 

Schéma vo vysokom rozlíšení pre PROM 74188, 74S287 a 74S571:

PP_3in1.PNG (76,74 kb)

 

Od začiatku bolo jasné že musím zmeniť filozofiu návrhu ak to má zvládnuť jedna 8255A-ka (a má to vedieť napaľovať 3 druhy PROM), proste priamo nie je dostatok bitov pre potrebné adresy (treba 9 adresných bitov). Tu vypomohol čítač 4040 - a pritom ani nie je celý využitý. Pre založenie PROM sú určené (a potrebné) 2 pätičky, jedna je pre PROM 74188 a druhá pre PROMy typu 74S287 a 74S571. Druhá pätička má vedľa seba prepínač, ktorým sa potom zvolí požadovaný typ 74S287 alebo 74S571. Ostatná filozofia programátoru vychádza z pôvodného uverejneného návrhu programátoru pre typ 74188. Použitie 2x ZIF pätičiek mimoriadne zjednodušuje návrh zapojenia celého programátoru.

 

Pozrime sa na to ako sú teraz využité porty čipu 8255A:

 

port A - bit 0 - tu sa generuje pulz pre +1 čítača 4040

            bit 1 - tu sa generuje pulz pre vynulovanie čítača 4040

            bity 2,3,4 - nepoužité (nc)

            bit 5 - ovládanie CS(neg.) PROM

            bit 6 - ovládanie prog.pulzu z 5V/10.5V/5V

            bit 7 - ovládanie relé na On/Off pre pin 16 (Ucc) PROM

 

port B - bity  0,1,2,3,4,5,6,7

            ovládanie tranzistorov T1÷T8, ktoré spínajú výstupy portu B do 0 pri programovaní

            pamäte PROM sa programujú postupne v rámci bytu vždy iba jednotlivo

            po bitoch, vždy býva zopnutý v jednom okamžiku iba jeden bit (teda v log.1)

           (teda zopnutý je v jednom momente iba jeden tranzistor BS170)

          

port C - bity  0,1,2,3,4,5,6,7

           čítanie obsahu PROM, čítanie obsahu PROM po naprogramovaní

          

__________________________________

Konkrétny príklad (Basic):


Nulovanie čítača:

POKE PA,2:POKE PA,0 ; PA=adresa portu A


Zvýšenie obsahu čítača o +1

POKE PA,1:POKE PA, 0 ; PA=adresa portu A

_________________________________

Teraz už nasledujú neučesané poznámky ktoré sú určené pre tento programátor:

 

- nepoužité hradlá čipu 7417, teda ich vstupné piny č. 5, 11 a 13 je dobré vzájomne prepojiť a cez odpor 1k ich pripojiť na +5V

- v programátore vždy môže byť založená len jedna PROM !

- ak programujeme pamäte typu 74S287 a 74S571 ktoré sú 4bitové vstupná a teda aj výstupná hodnota  sa pohybuje v rozmedzí 0÷15d (0÷Fh), je dobré v programe zabezpečiť kontrolu či údaj pri zadávaní nie je mimo povoleného rozsahu

- pri čítaní obsahu (či už po zápise) alebo pri čistom čítaní je dobré zabezpečiť aby na tranzistoroch T5÷T8 bola log.0, pretože potom čítame priamo správny údaj a nemusíme potom odčítať najvyššie 4 bity (alebo iné riešenie - načítame všetkých 8 bitov a odčítame 240d, urobí nám to isté)

- použitie 2 kusov ZIF pätičiek  (pätička s nulovou prítlačnou silou) je dané tým aby nebolo treba použiť zložité prepínanie vývodov na jednej pätičke, nesmierne to zjednodušilo výslednú konštrukciu

- ostatné vlastnosti sú podobné ako v špecializovanom programátore pre konkrétny jeden typ - PROM 74188, ostáva zdroj 10.5V, pripína sa napájanie pomocou DIL relátka, rovnaká je aj indikácia pomocou LED, a i.

- ak aj v minulej konštrukcii použitie DIL switchov nie je podmienkou - ak ich neosadíte dajte namiesto nich skratovaciu prepojku

 

P.S.:

Radšej sám odpovedám na otázku prečo som to neurobil takto hneď na začiatku ? No prečo ? Pretože som takýto programátor nepotreboval a zatiaľ ani nepotrebujem (spomínal som že 74S287 a 74S571 ani nemám doma k dispozícii). Pri 74188 ručne "nadlapať" 32 byte síce nie je bohviečo ale dá sa to urobiť rýchlo a ani tak ľahko neurobíte chybu - a aj sa to ľahko skontroluje. Pri "dlapaní" obsahu pre pamäť 74S287 by som už asi mierne zbledol a poklesol v kolenách - o 74S571 už ani radšej nehovorím - i keď tie možnosti na použitie sú pri nich naozaj o poznanie väčšie.


A na samý záver si zase rýpnem - na takomto princípe by sa dala urobiť aj napaľovačka pre Eprom 2708 ... ale kľud, nemám počítač ktorý by ich potreboval, takže z toho určite nič nebude, ja tie trojnapäťové potvory naozaj nemusím.  I keď - stále platí prvá veta v tomto článku ...

__________________________________________________________

Návrat do všetkých pokračovaní o SBC6502:

http://blog.3b2.sk/igi/post/SBC6502-0-UvodIntroduction.aspx

__________________________________________________________

Vaše hodnotenie, Rate post:

Comments

1/20/2020 10:15:21 AM #

trackback

Directory SBC6502

Directory SBC6502

Igi blog |

Comments are closed

Info o autorovi

Volám sa Igor Gramblička, bydlisko: Bratislava, Slovakia. Môj nick: Igi. Blog je o mojich záujmoch - som už na dôchodku, predtým som pracoval ako IT špecialista na počítačové siete a redakčné systémy vo viacerých denníkoch - až som pred rokmi nakoniec zakotvil v jednom denníku kde som to potiahol až do konca mojej profesnej kariéry.