główna technologie indeks tematyczny indeks alfabetyczny |
8255 - programowalny układ wejścia/wyjścia równoległego
wyprowadzenia
opis
8-bitowe porty PA i PB mogą być ustawione jako wejścia bądź wyjścia, natomiast port PC podzielony jest na dwie 4-bitowe części, które można oddzielnie programować jako wejście lub jako wyjście.
Sygnał RESET zeruje wszystkie rejestry układu oraz porty i ustawia je jako wyjścia.
Sygnałami A0 i A1 wybiera się port lub rejestr sterujący do odczytu lub zapisu danych:
/RD | /WR | A0 | A1 | operacja |
---|---|---|---|---|
0 | 1 | 0 | 0 | odczyt PA |
0 | 1 | 0 | 1 | odczyt PB |
0 | 1 | 1 | 0 | odczyt PC |
0 | 1 | 1 | 1 | operacja zabroniona |
1 | 0 | 0 | 0 | zapis PA |
1 | 0 | 0 | 1 | zapis PB |
1 | 0 | 1 | 0 | zapis PC |
1 | 0 | 1 | 1 | zapis rejestru sterującego |
1 | 1 | x | x | brak operacji |
rejestr sterujący
D7 | 1 - zapis do rejestru sterującego | |
---|---|---|
D6 | wybór trybu: 00-tryb0, 01-tryb1, 1x-tryb2 | |
D5 | ||
D4 | PA: | 0-wy, 1-we |
D3 | PC7..PC4: | 0-wy, 1-we |
D2 | wybór trybu PB dla trybu 2-go | |
D1 | PB: | 0-wy, 1-we |
D0 | PC3..PC0: | 0-wy, 1-we |
W trybie 1 i 2 poszczególne bity PC mogą być ustawiane lub zerowane poprzez rejestr sterujący. Z możliwości tej korzysta się w celu programowego blokowania i odblokowywania żądań przerwania.
D7 | 0 - ustawianie bitów PC |
---|---|
D6 | x |
D5 | |
D4 | |
D3 | numer bitu |
D2 | |
D1 | |
D0 | wstawiana wartość: 0/1 |
tryby pracy
tryb 0
Jest on przeznaczony do realizacji bezwarunkowych operacji wejścia/wyjścia.
tryb 1
Jest przeznaczony do realizacji operacji wejścia/wyjścia z przerwaniem, przy jednym kierunku przesyłania danych. Potrzebne do tego celu sygnały są wyprowadzane lub wprowadzane z wykorzystaniem linii portu C.
PC7 | we/wy proste | |
---|---|---|
PC6 | ||
PC5 | IBF A | input buffer full |
PC4 | INTE A, /STB A | interrup enable, strobe |
PC3 | INT A | interrupt |
PC2 | INTE B, /STB B | interrupt enable, strobe |
PC1 | IBF B | input buffer full |
PC0 | INT B | interrupt |
PC7 | /OBF A | output buffer full |
---|---|---|
PC6 | INTE A, /ACK A | interrup enable, acknowledge |
PC5 | we/wy proste | |
PC4 | ||
PC3 | INT A | interrupt |
PC2 | INTE B, /ACK B | interrupt enable, acknowledge |
PC1 | /OBF B | output buffer full |
PC0 | INT B | interrupt |
tryb 2
Jest on przeznaczony do realizacji operacji wejścia/wyjścia z przerwaniem, tylko poprzez port A - przy dwóch kierunkach przesyłu danych.
Umożliwia on wymianę danych z elementem zewnętrznym za pomocą jednej, 8-bitowej magistrali danych.
Potrzebne do tego celu sygnały są również wyprowadzane przez port C.
PC7 | /OBF | output buffer full | wy |
---|---|---|---|
PC6 | INTE, /ACK | interrup enable / acknowledge | wy |
PC5 | IBF | input buffer full | we |
PC4 | INTE, /STB | interrup enable / strobe | we |
PC3 | INT | interrupt | dla we i wy |
PC2 | tryb 0 PB: we/wy proste tryb 1 PB: jak w trybie 1 dla PB | ||
PC1 | |||
PC0 |
we/wy z potwierdzeniem
przygotował: Paweł Sojka