ATARI interface 8255.

By Administrator at júla 07, 2013 04:49
Filed Under: Atari

 

Chceli by ste niečo riadiť pomocou malého ATARI ? Nič jednoduchšie, k šťastiu Vám stačí zohnať si obvod 8255 alebo jeho novšiu, rýchlejšiu verziu 8255A (i keď tu sa tá jeho možná vyššia rýchlosť nevyužíva) a jeden obvod 74LS00 a môžete začať "čarovať". Potom máte k dispozícii 3x 8-bitový port, ktorý si môžete ľubovoľne nastaviť tak ako potrebujete, t.j brány môžu byť vstupné, výstupné, alebo časť brány môže byť vstupná a časť výstupná - toto sa ale týka iba portu C. Obvod 8255 (8255A) pochádza síce od fy. Intel, ale ako sami vidíte, bez najmenších problémov sa dá použiť aj pre procesor 6502, akurát pomocou obvodu 74LS00 mu trochu "upravíme" signály pre zápis a čítanie, aby si čip 8255 (8255A) 100%-ne a dokonale rozumel s procesorom 6502, sami vidíte že to nie je nič zložitého. Ale oplatí sa dávať pozor ... Použitý obvod 8255 musí byť na frekvenciu minimálne 2MHz, čip 8255A už dokáže pracovať na 5MHz.

 

Upozornenie:

Zásahy do zariadenia sú na vlastné riziko majiteľa zariadenia. Autor týchto stránok nenesie žiadnu

zodpovednosť za škody  spôsobené používaním zariadení postavených podľa tu uverejnených

schém alebo zobrazených úprav.

 

Programovanie obvodu 8255 (8255A), najprv trochu teórie a potom aj schémy zapojení:


Najprv pošleme do obvodu riadiace slovo:

na adresu D503h (54531)  - riadiaci port CW (riadiace slovo), tým sa nastaví obvod 8255 (8255A) do požadovaného režimu a potom už na adresách jednotlivých portov buď čítame, alebo zapisujeme potrebné údaje.


Máme k dispozícii tri režimy: - a to mód 0, 1 a 2.


Mód 0 - porty je možné samostatne naprogramovať ako vstupné, alebo výstupné, porty A a B všetky bity (8), na porte C extra spodnú časť bitov (dolné 4 bity) a extra hornú časť (horné 4 bity)


Mód 1 - iba pre porty A a B, je možné samostane naprogramovať ako vstup, alebo výstup celý port tak, že je k nemu automaticky priradených niekoľko bitov z portu C pre signály riadenia prenosu dát - týka sa to A aj B. Ostávajúce bity portu C sa dajú tiež samostatne použiť.


Mód 2 - iba pre port A, dá sa naprogramovať ako obojsmerný, pritom je mu automaticky priradených 5 bitov portu C pre riadenie signálov prenosu dát. Port B a zostávajúce bity portu C je možné použiť v móde 0 alebo 1.

 

Nasledujúca tabuľka ukazuje možnosti naprogramovania portov

obvodu 8255 (8255A) v móde 0:

(riadiaci port CW - tu je použitá adresa D503h (54531 dec))


 

Uverejňujem dve zapojenia, jedno je určené na pripojenie cez slot cartridge:

 

 

Druhé je určené na zabudovanie priamo do počítača, vyberte si čo sa viac hodí k použitiu.

 

 

_____________

Nasledujú príklady pre programovanie 8255 (8255A) v móde 0:


Na port D503h (54531)  - riadiaci port CW (riadiace slovo) pošleme číslo 144, (pozri tabuľku, tam je ako sa potom nastavia porty A, B, C) týmto si určíme že:

port A je vstupný, B je port výstupný, port C je výstupný. čiže zadáme POKE 54531,144

 

V zátvorke je Basic príkaz na čítanie a zápis.


na porte A  - D500h (54528) - čítame data zo vstupu

(? PEEK, adress) - ? PEEK 54528 - zobrazí obsah na vstupe portu A


na porte B  - D501h (54529)  - posielame data na výstup B

(POKE, data) - POKE 54529, data  (data = 0 až 255)


na porte C  - D502h (54530) - posielame data na výstup C

(POKE, data) - POKE 54530, data (data = 0 až 255)

_____________

Ďalší príklad:

chceme mať všetky porty vstupné:

Na port D503h (54531)  - riadiaci port CW (riadiace slovo) pošleme číslo 155, týmto si určíme že:

port A je vstupný, B je port vstupný, port C je vstupný, t.j POKE 54531,155


Basicovský príkaz na čítanie a zápis.

na porte A  - D500h (54528) - čítame data zo vstupu

? PEEK 54528 - zobrazí obsah na vstupe portu A


na porte B  - D501h (54529)  - čítame data zo vstupu

? PEEK 54529 - zobrazí obsah na vstupe portu B

 

na porte C  - D502h (54530) - čítame data zo vstupu

? PEEK 54530 - zobrazí obsah na vstupe portu C

___________________________________________________________

Konektor paralelnej zbernice, 50 pinový samec na strane počítača (rada XL):


Paralelný bus konektor Atari 800XL.

__________________________________________________________________________


Paralelný bus konektor Atari 800XE (130XE).

 

Kto chce s obvodom 8255, 8255A pracovať rýchlejšie (v strojáku), tak si musí naštudovať ďalšie veci priamo z datasheetu (a musí sa v strojáku vyznať), ale to nie je cieľom tohoto článku.

Veľa zdaru pri domácom laborovaní !
___________________________________________________________

Vaše hodnotenie, Rate post:

Comments

6. 10. 2018 15:52:47 #

trackback

Directory  Atari.

Directory  Atari.

Igi blog |

Info o autorovi

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

Rok, mesiac, počet článkov: