Partner WFG, 2FG, 1FG – CELOVIT OPIS STROJNE OPREME

8. VZPOREDNA VRATA (Z80 PIO)

===========================

Zilog Z80 PIO (Parallel Input/Output) je krmilnik vzporednih vrat z dvema neodvisnima 8-bitnima priključkoma (A in B). Na računalniku Partner skrbi za vzporedno komunikacijo z zunanjimi napravami. Podpira štiri načine delovanja: izhod, vhod, dvosmernost in bitni nadzor. Priključki so na naslovih 0xD0–0xD3.

8.1   Priključki

PriključekDecOpisSmerOpomba
0xD0208Podatki – vrata AV/I8-bitni podatkovni register
0xD1209Nadzor – vrata AV/INadzorni in vektorski registri
0xD2210Podatki – vrata BV/I8-bitni podatkovni register
0xD3211Nadzor – vrata BV/INadzorni in vektorski registri

8.2   Načini delovanja

Način delovanja za vsaka vrata se nastavi z ukazom 0x0F v nadzorni register. Zgornja dva bita besede določata način (M1, M0):

M1M0NačinOpis
00IzhodCPU piše na vrata
01VhodCPU bere iz vrat
10DvosmerniSamo vrata A; B je vhod za odziv
11Bitni nadzorVsak bit nastavljiv posebej
Primer: Inicializacija vrat A kot izhod, zapis bajta
init_pio:
        ; Nastavi vrata A v izhodni način (M1=0, M0=0 → 0x0F)
        ld      a, #0x0F            ; Ukaz: nastavi način
        out     (#0xD1), a          ; Pošlji na nadzorni register A

        ; Onemogoči prekinitve za vrata A
        ld      a, #0x03            ; Ukaz: nadzor prekinitev (EI=0)
        out     (#0xD1), a

        ; Zapiši bajt na vrata A
        ld      a, #0xAA            ; Podatek (vzorec 10101010)
        out     (#0xD0), a          ; Zapiši na podatkovni register A

        ret